我正在尝试发布一些数据,并且我将访问令牌作为查询字符串传递。我将从服务器获得blob响应。我使用了以下代码:
public issueId(asset: Type): Observable<Blob> {
let urlSearchParams = new HttpParams().set('access_token', this.cookieService.get('access_token'));
console.log('Entered DataService issueID');
return this.httpClient.post('http://localhost:3000/api/system/identities/issue', asset, {urlSearchParams},{responseType: "blob"});
}
我收到错误“预期2-3个参数,但得到4”。我正在使用角度4.资产是邮寄请求的主体。
答案 0 :(得分:1)
根据 post文档,您必须执行以下操作
put(url: url, body: data,
options: {params: urlSearchParams,responseType: "blob"});
aso您需要传递responsetype
ans params
作为选项的一部分
答案 1 :(得分:0)
您正在发送带有请求的多个可选对象。像这样更改您的请求。
public issueId(asset: Type): Observable<Blob> {
let urlSearchParams = new HttpParams().set('access_token', this.cookieService.get('access_token'));
console.log('Entered DataService issueID');
return this.httpClient.post('http://localhost:3000/api/system/identities/issue', asset, { params: urlSearchParams, responseType: "blob"});
}