当我在 Hero.service.ts 中使用 get Url 作为 web api 时,浏览器控制台出现以下错误。但是当我在那个项目中使用 .Json 文件时它工作正常,因为我能够在输出页面中看到值。我只是在学习 angular.io 网站。
控制台报错如下:
angular2-polyfills.js:471 Error: Uncaught (in promise): EXCEPTION: Error: unable to parse url 'http://md5.jsontest.com/?text=example_text'; original error: Cannot read property 'split' of undefined in [null](…)consoleError @ angular2-polyfills.js:471
Get url: http://md5.jsontest.com/?text=example_text
这是可用的完整代码,
你能帮我看看我做错了什么吗?
最佳答案
您的问题来自 InMemoryBackendService
,它需要以下 URL 格式(路径的两个级别):
http://host:port/base/collectionName
在您的情况下,服务会抛出异常,因为“collectionName 未定义...”
要使其正常工作,要么使用遵循此格式的 URL,要么从提供程序中删除 InMemoryBackendService
类:
providers: [
HTTP_PROVIDERS,
HeroService,
// in-memory web api providers
provide(XHRBackend, { useClass: InMemoryBackendService }), // <---
关于angular - Anglarjs2 - Http 获取请求 : Error: unable to parse url . .original 错误:无法读取 [null] 中未定义的属性 'split',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36628496/