我正在将Ionic应用程序升级到版本4,并且遇到了一个奇怪的问题,即我不确定数据是否已正确提交给我的API。
我将其简化为基本知识,API仍然返回401未经授权错误。
我知道API可以使用,因为当我通过邮递员提交API时,我会收到预期的数据...
我正在导入HttpClient
...
import { HttpClient, HttpHeaders } from '@angular/common/http';
这是我的简化功能,当单击“提交”按钮时运行。
onSubmit() {
const headers = new HttpHeaders({
'Content-Type': 'application/x-www-form-urlencoded'
});
let body = {
'username': 'test',
'password': 'test',
}
this.http
.post(this.apiService.url, body, { headers: headers })
.subscribe((data: any) => {
console.log(data);
}, error => {
console.log('error');
});
}
这一切在Ionic 3中都可以完美运行,所以我对为什么现在不起作用感到困惑。
答案 0 :(得分:0)
这个post为我解决了这个问题。显然Angular 5+会为您处理标头,所以我要做的就是删除它们,它就可以了。
onSubmit() {
let body = {
'username': 'test',
'password': 'test',
}
this.http
.post(this.apiService.url, body)
.subscribe((data: any) => {
console.log(data);
}, error => {
console.log('error');
});
}