【发布时间】:2018-04-18 04:18:00
【问题描述】:
VS 2017,新建,项目,C#,ASP.NET Web 应用,ASP.NET 4.5.2 空模板。
Webforms、MVC 和 WebAPI 的未选中文件夹和参考。后来通过 Nuget 添加了 MS WebApi v5.4.2。
手动添加“控制器”文件夹。
xController.cs:
namespace v1.MyApiCallTheirApi.api
{
public class xController : ApiController
{
// GET api/<controller>
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
}
}
index.html:
<body>
<input type="button" value="Go" onclick="go()"/>
<script type="text/javascript">
function go()
{
alert("lafdla");
$.ajax({
type: "GET",
url: "/api/x",
success: alert("ok")
});
}
</script>
</body>
$.ajax 调用总是返回 404。已经检查了 this、that 和许多其他的。到目前为止,我唯一的怀疑是它可能需要一个 Global.asax 来进行路由配置,但我认为在添加 API 后它应该为我自动添加一些隐藏的路由。
【问题讨论】:
-
看起来你正在混合约定和配置。
-
在调试模式下运行您的应用程序并尝试在新的浏览器窗口中点击 URL“localhost:55353/api/x”。仍然得到 404?
-
@Dilish 正确。
-
@KennethK。抱歉,没听懂。