$ http.get的json文件总是返回404

时间:2014-11-02 13:29:06

标签: angularjs

我想在我的应用程序中添加一个配置JSON文件 我已将其添加到我的项目中并尝试使用$ http.get:

来获取它
$http.get('http://localhost/myProject/content.json').success(function (data) {
        // Do stuff...
}).error((data, status, headers, config) => {
        // Failure...
});

问题在于我每次收到错误404。

4 个答案:

答案 0 :(得分:6)

这是您的Web服务器mime类型配置的问题 - 它可能没有json。 尝试将文件扩展名重命名为.txt或.html,它应该可以正常工作。

您还可以将mime类型扩展名添加到服务器。对于IIS express,它是web.config。例如:

 <staticContent>
    <remove fileExtension=".json" />
    <mimeMap fileExtension=".json" mimeType="application/json" />
  </staticContent>

答案 1 :(得分:0)

将content.json文件兄弟放到index.html并使用:

$http.get('content.json').success(function (data) {
        // Do stuff...
}).error((data, status, headers, config) => {
        // Failure...
});

答案 2 :(得分:0)

<configuration>
    <system.web>
      <compilation debug="true" targetFramework="4.5" />
      <httpRuntime targetFramework="4.5" />
    </system.web>
   **<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>**
</configuration>


This works fine.. as what Erez A. Korn has said.

答案 3 :(得分:0)

在angular 4中,将.json文件存储到项目的根文件夹中。所有Json文件存储在同一文件夹中。