我有一个AngularJS应用程序。
我有以下文件夹结构:
ROOT
-app
-data
index.html
在我的服务中,我加载了位于数据文件夹中的bookmarks.xml文件:
this.$http.get('data/bookmarks.json').then(...)
当我在本地运行网站时:http://localhost:8080一切正常,文件已加载并呈现。
将我的应用程序部署到Microsoft Azure,azurewebsites.net后,我收到此错误消息,其中我的代码加载了bookmarks.json文件:
可能未处理的拒绝:{“data”:“您要查找的资源已被删除,名称已更改,或暂时不可用。”,“status”:404,“config”:{“method”: “GET”, “transformRequest”:[空], “transformResponse”:[空], “jsonpCallbackParam”: “回调”, “URL”: “数据/ bookmarks.json”, “标题”:{ “接受”:” application / json,text / plain, / “}},”statusText“:”Not Found“}
知道为什么会这样吗?看起来无法在数据文件夹中找到该文件。文件当然在那里。试过“/data/bookmarks.json” - 没效果。
答案 0 :(得分:1)
在您的web.config中,查看该部分。此部分确定允许Web应用程序提供的MIME类型。如果您希望能够下载.json文件,请确保您具有以下内容:
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
如果您还没有web.config文件(例如,如果您只是提供静态内容),请将其添加为您的web.config:
<?xml version="1.0"?>
<configuration>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
</configuration>