如题,通过IIS访问一般处理程序时,如果做到不带ashx后缀即可访问?
如:
http://localhost:8080/test.ashx可直通过http://localhost:8080/test即可访问。
如:
http://localhost:8080/test.ashx可直通过http://localhost:8080/test即可访问。
解决方案 »
- 求ASPxPivotGrid控件有经验者解答不能拖动列头问题
- 各位大虾,我的操作系统windows2003的,在iss下存在一个格式为.dat的文件却打不开
- ASP.NET MVC中URL的参数自动加上"%20%20%20"的问题
- Menu控件的一个菜单项点击后不能处于选定状态
- 会不会存在比较难一些的正则在c#中可以执行,在js中js不明白?
- sql sever2000数据库中文和英文的存储问题
- 这个问题怎么解决啊??只截取一定数量字符但不包括html编码。
- ASP.NET中如何删除多个文件?
- css样式不起作用????江湖救急!!!
- 帮我看看错在哪里好吗?
- [急]对象的当前状态使该操作无效 FrameWork 1.1432--在线等
- js中使用<%%>找不到后台变量
是的,asp.net 不管是webform还是mvc,都支持路由。不过这个东西其实用不着路由。你在你的网站中创建一个 test 目录,然后里边放一个ashx,例如文件名为 default.ashx。网站配置为 default.ashx 是默认要执行的文件之一(与 index.html、default.aspx、default.asp 等一样都是默认文档)就可以了。
我非常赞同这样的开发设计基点。搞一些噱头,要知道目的是干嘛的,然后再搞。不要把那些东西说成是技术需要的,要知道花费大量时间和资源去搞那些东西,都是满足一些个别人的癖好,其实真正用起来有几个人关心你的网站下的某个服务地址的有没有 ashx 后缀?!
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(System.Web.Routing.RouteTable.Routes);
}
static void RegisterRoutes(System.Web.Routing.RouteCollection routes)
{
routes.Ignore("{resource}.axd/{*pathInfo}");
routes.MapPageRoute("user", "api/user/{par}", "~/api/user.aspx", false);
}
然后我就可以在user.aspx里面奔放了..当然了.前台aspx是没东西的.. 只有一句话.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="user.aspx.cs" Inherits="api_user" %>
后台就可以随意玩了.比如访问xxx.com/api/user/login post过去username 跟password.进行登陆..
var json= new System.IO.StreamReader(Request.InputStream).ReadToEnd();
var user=发序列化<userinfo>(json);
if(RouteData.Values["par"].ToString().ToLower()=="login")
{
//查询数据库.....
}
一些伪静态网站的url其实就是重写来的