【问题标题】:Angular 2 Error: Uncaught (in promise): Response with status: 0 for URL: nullAngular 2 错误:未捕获(承诺中):响应状态:0 对于 URL:null
【发布时间】:2017-10-29 16:11:53
【问题描述】:

我的申请是ASP.NET Core 1.0 Web API。 我正在使用Angular 2typescript 开发前端。

如果我在网站完全加载到 Google Chrome 之前刷新网站,一切正常,但如果我在 Mozilla Firefox 上执行相同操作,我会收到以下错误消息:

[error.service] An error occured: Object { _body: error, status: 0, ok: false, statusText: "", headers: Object, type: 3, url: null }  app.e9e4671abf55fe5a53fc.js:936:46167

s</ConsoleLogger.prototype.error TheNameOfMyWebSite.net/js/app.e9e4671abf55fe5a53fc.js:936:46167
u</ErrorService.prototype.handleError TheNameOfMyWebSite.net/js/app.e9e4671abf55fe5a53fc.js:936:39646
u</CustomHttp.prototype.request/< TheNameOfMyWebSite.net/js/app.e9e4671abf55fe5a53fc.js:936:38047
a</CatchSubscriber.prototype.error TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:543:27790
a TheNameOfMyWebSite.js:311:808
[264]/</</</o</ZoneDelegate.prototype.invokeTask TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:8316
onInvokeTask TheNameOfMyWebSite.js:176:9452
[264]/</</</o</ZoneDelegate.prototype.invokeTask TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:8229
[264]/</</</n</Zone.prototype.runTask TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:3362
ZoneTask/this.invoke TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:9349


ERROR Error: Uncaught (in promise): Response with status: 0  for URL: null
Stack-Trace:
resolvePromise@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:57:1180
resolvePromise@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:57:796
scheduleResolveOrReject/<TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:57:1803
[264]/</</</o</ZoneDelegate.prototype.invokeTask@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:8316
onInvokeTask@TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:9452
[264]/</</</o</ZoneDelegate.prototype.invokeTask@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:8229
[264]/</</</n</Zone.prototype.runTask@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:3362
drainMicroTaskQueue@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:367
ZoneTask/this.invoke@TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:9396

defaultErrorLogger TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:8:473
ee</ErrorHandler.prototype.handleError TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:162:273
next TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:14602
Qe</EventEmitter.prototype.subscribe/i< TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:6258
c</SafeSubscriber.prototype.__tryOrUnsub TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:211:3724
c</SafeSubscriber.prototype.next TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:211:2960
u</Subscriber.prototype._next TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:211:1927
u</Subscriber.prototype.nextTheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:211:1574
p</Subject.prototype.next TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:211:6849
Qe</EventEmitter.prototype.emit TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:6006
Xe</NgZone.prototype.triggerError TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:10237
onHandleError TheNameOfMyWebSite.net/js/vendor.e9e4671abf55fe5a53fc.js:176:9812
[264]/</</</o</ZoneDelegate.prototype.handleError TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:7683
[264]/</</</n</Zone.prototype.runGuarded TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:2951
[264]/</</</n.microtaskDrainDone/< TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:57:2461
[264]/</</</n.microtaskDrainDone TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:57:2430
drainMicroTaskQueue TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:477
ZoneTask/this.invoke TheNameOfMyWebSite.net/js/polyfills.e9e4671abf55fe5a53fc.js:50:9396 

但网站刷新良好,一切正常,除了我收到的错误。

我只找到this 的帖子,该人有类似的问题。

Stackoverflow 上的另一个人也有一个 similar problem,但由于我没有使用 CORS,因为前端和后端在同一个域上运行,这对我不起作用。

这个错误信息是什么意思?我做错了什么?

【问题讨论】:

    标签: asp.net angular typescript asp.net-core


    【解决方案1】:

    这看起来像是一个 CORS 问题。

    跨域资源共享 (CORS) 是一种机制,允许从提供第一个资源的域之外的另一个域请求网页上的受限资源(例如字体)。

    阅读更多相关信息here

    基本上,您的 Angular2 应用程序托管在您调用的 API 之外的另一台服务器上。

    由于您使用的是ASP.NET Core 1.0 Web API,建议您阅读微软的Enabling Cross-Origin Requests (CORS) 文档。

    【讨论】:

    • 您好@mercador 感谢您的回答。我们没有使用 CORS,因为后端和前端在同一个域上运行。
    • @MoritzSchmidt 也许你的 Firefox 网络浏览器安装了一些阻止脚本的插件?
    • 好主意,但即使我停用所有插件,我也会遇到同样的错误:/ @mercador
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-24
    • 2023-03-11
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-08
    相关资源
    最近更新 更多