angular - 错误 TS2769:没有重载匹配此调用。键入'字符串 | null' 不可分配给类型 'string | 细绳[]'
问题描述
export class AuthService {
constructor(private http: HttpClient, private webService: WebRequestService, private router: Router) { }
login(email: string, password: string) {
return this.webService.login(email, password).pipe(
shareReplay(),
tap((res: HttpResponse<any>) => {
// auth tokens will be in the header of this response
this.setSession(res.body._id, res.headers.get('x-access-token'), res.headers.get('x-refresh-token'));
console.log('logged in');
})
)
}
logout() {
this.removeSession();
this.router.navigate(['/login']);
}
getAccessToken() {
return localStorage.getItem('x-access-token');
}
getRefreshToken() {
return localStorage.getItem('x-refresh-token');
}
getUserId() {
return localStorage.getItem('user-id');
}
setAccessToken(accessToken: any) {
return localStorage.setItem('x-access-token', accessToken);
}
private setSession(userId: string, accessToken: any, refreshToken: any) {
localStorage.setItem('user-id', userId);
localStorage.setItem('x-access-token', accessToken);
localStorage.setItem('x-refresh-token', refreshToken);
}
private removeSession() {
localStorage.removeItem('user-id');
localStorage.removeItem('x-access-token');
localStorage.removeItem('x-refresh-token');
}
getNewAccessToken() {
return this.http.get(`${this.webService.ROOT_URL}/users/me/access-token`, {
headers: {
'x-refresh-token': this.getRefreshToken(),
'_id': this.getUserId()
},
observe: 'response'
}).pipe(
tap((res: HttpResponse<any>) => {
this.setAccessToken(res.headers.get('x-access-token'));
})
)
}
}
我需要解决以下错误。请帮忙。 错误:src/app/service/auth.service.ts:61:9 - 错误 TS2769:没有重载匹配此调用。最后一个重载给出了以下错误。键入'字符串 | null' 不可分配给类型 'string | 细绳[]'。类型 'null' 不能分配给类型 'string | 细绳[]'。键入'字符串 | null' 不可分配给类型 'string | 细绳[]'。类型 '"response"' 不能分配给类型 '"body" | 不明确的'。错误行:'x-refresh-token':this.getRefreshToken(),
解决方案
推荐阅读
- visual-studio-code - 如何将 selenium-server-standalone 更新为量角器和 node-js 的特定版本?
- vb.net - 从 2 个 SQL Server 源和 1 个 MYSQL 源的 3 个 tableadapter 创建表
- php - WordPress,setup_postdata 创建意外结果(跳过每秒输入)
- python - 转换数据框(行到列和计数)
- ios - 如何在 xcode 11 中为新项目使用特定的根控制器初始化 uiwindow?
- ruby-on-rails - 使用正则表达式数组优化在字符串数组中查找匹配项
- c# - 在哪些情况下,异步方法将在与调用 await 之前使用的线程不同的线程中继续?
- c# - 如何获取客户端机器日期格式?
- arrays - 发送一个字符串数组并使用 parcelable kotlin 接收它
- mysql - 加入多个计数