我正在尝试实施here所述的身份验证方案。
我很难找到下面代码中定义req
参数的位置。我的代码无法编译,因为它当前未定义。这可能是他的代码中的拼写错误。我查看了评论,但似乎没有人指出:
// src/app/auth/jwt.interceptor.ts
// ...
import 'rxjs/add/operator/do';
export class JwtInterceptor implements HttpInterceptor {
constructor(public auth: AuthService) {}
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(req).do((event: HttpEvent<any>) => {
if (event instanceof HttpResponse) {
// do stuff with response if you want
}
}, (err: any) => {
if (err instanceof HttpErrorResponse) {
if (err.status === 401) {
// redirect to the login route
// or show a modal
}
}
});
}
}"
有人可以指出我缺少的东西吗?
非常感谢提前。
答案 0 :(得分:2)
看起来像是一个错字。拦截函数提供了一个参数request
- 它可能应该引用参数而不是req
。
答案 1 :(得分:1)
参数必须为request
,如下所示
return next.handle(request)
.do(event => {
if ()