从HTTP远程服务器获取Angular 2的JSON失败,但是成功了localy

时间:2017-02-22 08:52:10

标签: angular angular-http

我正在尝试使用Angular2中的htttp.get读取JSON文件。

当我在项目中使用存储 localy 的文件时,就可以了

但是 - 当我使用远程服务器时,完全相同的文件,我收到以下错误:

  

404 - 找不到收藏品'未定义'未找到

浏览http://example.com/my.json,我可以在任何浏览器上看到该文件。

以下是获取文件的打字稿代码:

private url = '../my.json';   <--- This works
private url = 'http://example.com/my.json';   <--- This throws the error


return this.http.get(this.url)
                    .map(this.extractData)
                    .catch(this.handleError);

提前致谢。

1 个答案:

答案 0 :(得分:5)

Not found collection错误表明您之前使用过angular-in-memory-web-api。您需要从项目中删除与该项目相关的所有内容,这相当于从imports中删除NgModule等于以下内容:

InMemoryWebApiModule.forRoot(InMemoryDataService)

这样你就可以使用外部api和db。

否则您的代码不应更改,但如果您愿意,请this tutorial跟随您。