简体   繁体   English

将HTTP responseType设置为arraybuffer

[英]Set HTTP responseType as arraybuffer

I facing an error while building a jhipster project that says that I need to change the parameter responseType in a get request. 我在构建一个jhipster项目时遇到错误,该项目说我需要在get请求中更改参数responseType

Here's the error: 这是错误:

Argument of type '{ responseType: "arraybuffer"; 类型'{responseType:“ arraybuffer”; }' is not assignable to parameter of type '{ headers?: HttpHeaders | }'不可分配给类型'{headers ?: HttpHeaders | { [header: string]: string | {[header:string]:字符串| string[]; 串[]; }; }; observe?: "body"; 观察? params?: Ht...'. 参数?:Ht ...'。 Types of property 'responseType' are incompatible. 属性“ responseType”的类型不兼容。 Type '"arraybuffer"' is not assignable to type '"json"'. 类型'“ arraybuffer”'不能分配给类型'“ json”'。 Version: typescript 2.7.2 版本:打字稿2.7.2

As you see typescript is telling me to change the value from arraybuffer to json , but I need to keep it as arraybuffer since I am dealing with a file and I fully aware that the responseType can be set to arraybuffer , blob , json or text . 如您所见, typescript告诉我将值从arraybuffer更改为json ,但是由于我正在处理文件,因此我需要将其保留为arraybuffer ,我完全知道responseType可以设置为arraybufferblobjsontext

Here's the code 这是代码

showfile(file?: any): Observable<any> {
    return this.http.get<any>(SERVER_API_URL + `leave/api/downloadFile/${file}`, { responseType: 'arraybuffer' });
}
this.http.get<any>

删除任何

When I need to call an endpoint that is returning a file, I usually use the type Observable<HttpResponse<Blob>> . 当我需要调用返回文件的端点时,通常使用Observable<HttpResponse<Blob>>

Try: 尝试:

showfile(file?: any): Observable<HttpResponse<Blob>> {
    return this.http.get(SERVER_API_URL + `leave/api/downloadFile/${file}`, { responseType: 'blob' });
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如果responseType是arraybuffer,如何从$ http读取JSON错误响应 - How to read JSON error response from $http if responseType is arraybuffer javafx webview javascript XMLHttpRequest responseType数组缓冲区 - javafx webview javascript XMLHttpRequest responseType arraybuffer 如何检测XMLHttpRequest是否支持responseType =“arraybuffer”? - How to feature detect if XMLHttpRequest supports responseType = “arraybuffer”? 如何在Javascript中将文本转换为ArrayBuffer,如ArrayBuffer的responseType - How to convert text to ArrayBuffer like responseType of ArrayBuffer in Javascript JavaScript XMLHttpRequest.responseType as &quot;arraybuffer&quot; -- 如何获取当前的数组缓冲区块 - JavaScript XMLHttpRequest.responseType as "arraybuffer" -- how to get current arraybuffer chunk 设置HttpRequest的responseType - set responseType of a HttpRequest 用于responseType arraybuffer的xmlHttpRequest GET在电子中获得空响应 - xmlHttpRequest GET for responseType arraybuffer gets empty response in electron 提供的值“moz-chunked-arraybuffer”不是有效的“responseType” - The provided value 'moz-chunked-arraybuffer' is not a valid 'responseType axios 如何将 blob 与 arraybuffer 作为 responseType 处理? - how does axios handle blob vs arraybuffer as responseType? WebKit相当于Firefox的“moz-chunked-arraybuffer”xhr responseType - WebKit equivalent to Firefox's “moz-chunked-arraybuffer” xhr responseType
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM