Angular 角度6错误类型错误:调用对象无效
答:错误与角度无关,而是一个称为pace的库。不知怎的,它插入了http客户端 我有一个在Chrome上运行良好的应用程序,但在IE和Edge上却不行。当我尝试呼叫服务时会发生:Angular 角度6错误类型错误:调用对象无效,angular,Angular,答:错误与角度无关,而是一个称为pace的库。不知怎的,它插入了http客户端 我有一个在Chrome上运行良好的应用程序,但在IE和Edge上却不行。当我尝试呼叫服务时会发生: Service: getTest():Observable<string[]>{ var url = `https://xx.azurewebsites.net/api/test`; return this.httpClient.get<string[]>(url); } 身
Service:
getTest():Observable<string[]>{
var url = `https://xx.azurewebsites.net/api/test`;
return this.httpClient.get<string[]>(url);
}
身份验证拦截器:
import { Injectable } from '@angular/core';
import { HttpEvent,HttpHandler,HttpRequest,HttpInterceptor } from '@angular/common/http';
import { AdalService } from 'adal-angular4';
import { Observable } from 'rxjs';
@Injectable()
export class AuthInterceptor implements HttpInterceptor {
constructor(private adalService: AdalService) { }
intercept(req: HttpRequest<any>, next:HttpHandler): Observable<HttpEvent<any>>{
const authHeader = this.adalService.userInfo.token;
var header = 'Bearer ' + authHeader;
const authReq = req.clone({headers: req.headers.set('Authorization', header)});
return next.handle(authReq);
}
}
从'@angular/core'导入{Injectable};
从'@angular/common/http'导入{HttpEvent,HttpHandler,HttpRequest,HttpInterceptor};
从“adal-ANGLAR4”导入{AdalService};
从“rxjs”导入{Observable};
@可注射()
导出类AuthInterceptor实现HttpInterceptor{
构造函数(私有adalService:adalService){}
截取(请求:HttpRequest
调试器:
回答:该错误与Angular无关,而是一个名为pace的库。不知何故,它中断了http客户端。在没有模板文本字符串的情况下可以测试它吗?“`>>”是否检查了api是否正常工作?针对给定api的简单http请求的响应为空。(我目前在手机上,因此无法与邮递员等联系)你也可以从那个错误中添加堆栈跟踪吗?是的,它在Chrome上运行得非常好。我做了一个堆栈跟踪。谢谢。跟踪没有捕获请求。我将图像上传到我的主要帖子。我需要添加一些polyfill吗?我不知道你是怎么发现的,但它确实节省了我大量的时间。谢谢!我甚至不记得我是怎么弄明白的:D我猜有很多尝试和错误,但很高兴听到这有帮助。
import { Injectable } from '@angular/core';
import { HttpEvent,HttpHandler,HttpRequest,HttpInterceptor } from '@angular/common/http';
import { AdalService } from 'adal-angular4';
import { Observable } from 'rxjs';
@Injectable()
export class AuthInterceptor implements HttpInterceptor {
constructor(private adalService: AdalService) { }
intercept(req: HttpRequest<any>, next:HttpHandler): Observable<HttpEvent<any>>{
const authHeader = this.adalService.userInfo.token;
var header = 'Bearer ' + authHeader;
const authReq = req.clone({headers: req.headers.set('Authorization', header)});
return next.handle(authReq);
}
}