我有一个离子应用程序,通过该应用程序我可以使用POST方法调用休息服务。我正在向服务器发送大量的base64数据。如果我通过邮递员发送请求,一切正常。但是,当我通过应用程序发送它时,它给了我400错误的请求错误。 这是我的角度提供程序代码:-
uploadPic(bugImage : any){
const headers1 = new HttpHeaders();
headers1.append('Content-Type', 'application/json');
return this.http.post(this._global.LocalserviceURL + 'ReportaBug', JSON.stringify(bugImage),{headers : headers1}).map(result => result).catch(this.errorHandler);
}
errorHandler(error: HttpErrorResponse) {
return Observable.throw(error.message || "Sever Error");
}
这就是我使用提供程序方法的方式:-
onBasicUpload(e: any) {
this.imgpov.uploadPic(this.test).subscribe(res => {
console.log(res);
})
我已经看过网上了,它说也要发送标题。我想我正在发送适当的标题。我该如何工作?
答案 0 :(得分:0)
您需要查看“内容类型标题”
headers: new HttpHeaders( {
**'Content-Type': 'application/json'**,
'Authorization': 'Basic ' + token
} )
或
headers: new Headers({'Content-Type': 'application/x-www-form-urlencoded'
因此,根据请求的内容类型,您需要添加这些标头。
答案 1 :(得分:0)
我发现根本原因应该是您的请求标头中的内容类型尚未更新。
尝试使用 const headers1 = new HttpHeaders()。set('Content-Type','application / json'); 像Angular HttpClient doesn't send header