我已经把我自己的小错误处理程序放在一起来处理REST服务器上的HttpErrorACK,但是我注意到客户端出现了问题,Angular正在将它们包装为HttpErrorACK的一部分,该部分会传递给我的错误处理程序。
在控制台上,我首先看到这个:
CORS 策略已阻止从源“http://localhost:4200”以“http://localhost:8080/group”位置访问 XMLHttpRequest:当请求的凭据模式为“include”时,响应中“访问控制-允许-源”标头的值不得为通配符“*”。由 XMLHttpRequest 发起的请求的凭据模式由 withCredentials 属性控制。
在这种情况下,这是意料之中的,但是我希望我的错误处理程序记录这个错误,只是我不知道如何记录。这是使用时的处理程序:
getGroups(): Observable<Group[]> {
return this.http.get<Group[]>(`${this.restUrl}/group`).pipe(
catchError(
error => this.errorService.handleError<Group[]>(
error, 'getGroups', [])
)
);
}
我的错误服务:
handleError<T>(
error: HttpErrorResponse,
operation = 'operation',
result?: T) {
this.messageService.add(`${operation} failed`);
this.messageService.add(`HTTP error response: status[${error.status}];
error.message:"${error.message}"`);
this.messageService.add(`Is ErrorEvent?
${error.error instanceof ErrorEvent ? "yes":"no"}`);
this.messageService.add(`Is ProgressEvent?
${error.error instanceof ProgressEvent ? "yes":"no"}`);
return of(result as T);
}
所以Angular HttpClient很有希望包装了这个错误——或者完全取代了它。我能在我的错误处理器中得到它吗?
我的错误处理程序的输出是:
getGroups failed
HTTP error response: status[0]; error.message:"Http failure response for http://localhost:8080/group: 0 Unknown Error"
Is ErrorEvent? no
Is ProgressEvent? yes
我看不出我能用ProgressEvent
做些什么。
[2019-02-28] 更新
正如Anjil在评论中所说,此CORS错误不是HTTP错误。它被什么东西扔到某个地方 - 我不知道是什么。可能是浏览器,可能是Angular,RxJS,HttpClient。
您可以尝试如下代码
getGroups(): Observable<Group[]> {
return this.http.get<Group[]>(`${this.restUrl}/group`).subscribe(
results => {
console.log(results)
},
err => {
// Do stuff whith your error
this.displayError(err);
},
() => {
// Do stuff after completion
}
)
}
private displayError(ex): void {
console.log(ex);
}
我想要Express服务器端重定向角度页面 我在localhost:3000处运行express 在localhot:4200处运行angular 当express重定向到angular localhost时:4200 我总是收到错误 如何让角接受cors响应?
当我上传一个新版本到Google Play控制台时,我得到以下消息。 null null
我从angular调用这个API,但我在飞行前请求上得到了CORS错误。我什么都试过了,但不知道哪里出错了。你知道吗?
问题内容: 这是一个很长的路,但是以前有人见过这个错误吗?我正在尝试使用express,angular和mongoDB添加“ Transporters”。每当我访问由transporters控制器控制的页面时,都会收到此错误: 运输者控制器如下所示: 在我看来,我调用该列表并创建方法。他们产生上述错误 我从ng:areq的有角文档中得到了这个,尽管仍然不知道发生了什么 AngularJS经常断言,
控制台错误png我们一直试图通过使用以下代码打印特定网站的控制台错误。但是我们无法捕捉控制台错误。有人能给出快速响应吗 代码行: 错误: 代码行: 错误: 代码块:
您好,我正在尝试从本地主机角度应用程序将图像上传到cloudinary api,并出现以下错误 访问位于“”的XMLHttpRequesthttps://api.cloudinary.com/v1_1/xxxxxx/image/upload“起源”http://localhost:4200'已被CORS策略阻止:飞行前响应中的访问控制允许标头不允许请求标头字段类型。 我的角形式和超文本传输协议请求