【发布时间】:2019-06-19 05:14:47
【问题描述】:
我有一个 java 后端,它为我提供了一些受身份验证保护的 API。
因此,如果我使用任何具有授权的浏览器或邮递员调用它,我会得到200 (Ok) 响应,但如果我使用相同的用户和密码设置httpHeaders,我会得到401 (Unauthorized)。
来电:
let username: string = 'admin';
let password: string = 'pe';
let headers = new HttpHeaders().set('Authorization' , 'Basic ' + btoa(username + ':' + password)).set('Content-Type', 'application/json').set('cache-control', 'no-cache');
console.log(headers);
let params = new HttpParams().set('instID', value).set('procType', 'M');
return this.httpClient.get<pe_process_instance[]>('http://' + this.urlConfig.BASE_URL + ':' + this.urlConfig.PORT + '/' + this.urlConfig.WSBaseURL + '/getipeprocessinstances', { headers: headers , params: params });
回应:
我在这里缺少什么?我是否正确设置了标题?
【问题讨论】:
-
我认为最好的做法是使用
interceptor -
@Abhishek 看不出答案对我有什么帮助:/
-
好吧,这似乎在选项请求上失败了,在我看来这是一个 CORS 问题。您是否在后端正确设置了 CORS?
标签: angular api http authentication header