【发布时间】:2018-06-16 16:35:33
【问题描述】:
我有一个 Azure Web 应用程序的问题,因为它没有加载位于服务器上的 .json 文件。该应用程序运行良好,直到它需要从 .json 文件加载数据。该事件是通过单击一个按钮来触发的,该按钮运行一个 JavaScript 代码,该代码进行 XmlHttpRequest 调用。
这是发出请求的 jQuery 代码(放置在 mvc_test.js 文件中):
$(document).ready(function () {
var model = {
userLanguage: 'en-EN',
getData: function() {
return $.ajax({
url: "https://easyfabric.azurewebsites.net/js/clauses_array.json",
type: "GET",
dataType : "json", //"text"
timeout: 5000
});
}
};
我使用了资源的绝对路径,但使用相对路径时收到了同样的错误。
上面的代码应该获取数据并将其传递给将数据打印到控制台的函数。
它以前工作过,但后来我故意更改为错误的路径来测试包含错误消息的模式窗口。当我改回正确的路径(昨天)时,我开始收到 404 错误。我已将 ***.json 文件 *** 与发出 xhr 请求但也不起作用的 javascript 文件移动到同一文件夹中。 index.html、.css 和 .js 文件、jquery 和 office-ui 框架加载没有问题。
应用程序的内容从 github 存储库部署到服务器。
Azure 门户的诊断部分中的失败请求跟踪日志向我提供了 SECURITY_DENIED_BY_MIMEMAP 和 MODULE_SET_RESPONSE_ERROR_STATUS 的警告。
似乎服务器上的某些安全设置拒绝访问 .json 文件。但奇怪的是加载了同一文件夹中的 .js 文件(因为我已经清除了浏览器的缓存)和 .json 文件不是。
谁能解释一下这个问题以及如何解决?
谢谢!
【问题讨论】:
标签: ajax azure azure-web-app-service