以下是在我的测试 Web 服务器(Windows 7 上的 IIS 7)上运行的:
但是完全相同的代码在两个生产 Web 服务器上都给了我以下 404 错误:
(Windows Server 2008 上的 IIS 7 和 Windows Server 2003 上的 IIS 6)
[编码]
Global.asax 路由设置:
protected void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{deptId}/{member}",
defaults: new { deptId = RouteParameter.Optional, member = RouteParameter.Optional}
);
}
Page.aspx jQuery 语句:
$.ajax(
{
url: "api/Department/" + '<%= Request.QueryString["deptId"] %>',
contentType: "application/json",
dataType: "json",
success: function (data) {
alert('hello');
}
});
DepartmentController.cs GET 方法:
[HttpGet]
public Department GetDepartment(int deptId)
{
var deptRepo = new DepartmentRepository();
return deptRepo.GetDepartment(deptId);
}
我在这里浏览了很多类似的问题,但没有找到答案。
为什么相同的代码可以在一台 Web 服务器上运行,但不能在其他服务器上运行?
我需要在我的应用程序或 IIS 中配置什么特别的东西吗?
我真的坚持这一点。任何帮助将不胜感激。