从 HTTP 远程服务器获取 Angular 2 的 JSON 失败,但在本地成功
Getting JSON for Angular 2 from HTTP remote server fails, but succeeds localy
我正在尝试使用 Angular2 中的 htttp.get 读取 JSON 文件。
当我在我的项目中使用存储在 localy 的文件时,它工作正常。
但是 - 当我使用远程服务器时,完全使用相同的文件,我收到以下错误:
404 - Not Found Collection 'undefined' not found
浏览到 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);
提前致谢。
Not found collection
错误提示您之前使用过angular-in-memory-web-api
。您需要从您的项目中删除与此相关的所有内容,这相当于从您的 NgModule
中的 imports
中删除以下内容:
InMemoryWebApiModule.forRoot(InMemoryDataService)
这样您就可以使用外部 api 和 db.
否则您的代码不应更改,但如果您愿意,遵循 this tutorial 应该会对您有所帮助。
我正在尝试使用 Angular2 中的 htttp.get 读取 JSON 文件。
当我在我的项目中使用存储在 localy 的文件时,它工作正常。
但是 - 当我使用远程服务器时,完全使用相同的文件,我收到以下错误:
404 - Not Found Collection 'undefined' not found
浏览到 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);
提前致谢。
Not found collection
错误提示您之前使用过angular-in-memory-web-api
。您需要从您的项目中删除与此相关的所有内容,这相当于从您的 NgModule
中的 imports
中删除以下内容:
InMemoryWebApiModule.forRoot(InMemoryDataService)
这样您就可以使用外部 api 和 db.
否则您的代码不应更改,但如果您愿意,遵循 this tutorial 应该会对您有所帮助。