我的asp.net项目中的Content文件夹中有一个json文件:
<projectName>
\Content
NBCCJr.json
Run Code Online (Sandbox Code Playgroud)
...以及访问它的代码:
$.getJSON('~/Content/NBCCJr.json', function (data) {
$.each(data, function(i, dataPoint) {
// Bla
});
});
)
Run Code Online (Sandbox Code Playgroud)
......但是在调用代码时没有任何反应; 浏览器控制台说:"无法加载资源:服务器响应状态为404(未找到)"
为什么没找到?是不是"tilde whack filename"文件的正确路由?
我也向后试了"whacks":
$.getJSON('~\Content\NBCCJr.json', function (data) {
Run Code Online (Sandbox Code Playgroud)
...并得到相同的结果(" 无法加载资源:服务器响应状态为404(未找到) ")
然后我尝试了这样一个前所未有的打击:
$.getJSON('Content/NBCCJr.json', function (data) {
Run Code Online (Sandbox Code Playgroud)
...我在控制台中收到了这个含糊不清的消息:
*GET http://localhost:9702/Content/NBCCJr.json 404 (Not Found) jquery.js:8724
XHR finished loading: "http://localhost:9702/Content/NBCCJr.json".*
Run Code Online (Sandbox Code Playgroud)
所以它还没有找到并且还没有加载?
当我尝试通过更改以下内容导航到浏览器中的文件时:
http://localhost:9702/Default.cshtml
Run Code Online (Sandbox Code Playgroud)
...至:
http://localhost:9702/Content/NBCCJr.json
Run Code Online (Sandbox Code Playgroud)
我从Vint Cerf,Tim Berners-Lee和/或Al Gore那里获得了一条信息丰富的WSOD消息说:
HTTP错误404.3 - 未找到由于扩展配置,无法提供您请求的页面.如果页面是脚本,请添加处理程序.如果要下载文件,请添加MIME映射.
感谢JAM,它现在正在运作.
我不得不将其添加到Web.Config:
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)