gpt4 book ai didi

javascript - 使用需要 header 并提供内容的 REST 请求下载文件

转载 作者:数据小太阳 更新时间:2023-10-29 05:05:50 27 4
gpt4 key购买 nike

我正在使用带有 REST API 的 AngularJs。我不了解 REST API。我可以通过发送 REST 请求使用 API 存储数字对象。我也可以通过 GET 请求获取它。请求需要有一些特定的 header 。

我的目标是为用户提供“下载并另存为”链接。现在在点击事件上我提出请求:

    this.file = function (file) {
var url = config.domain + 'file/' + file;

var methods = resource(url, null, {
'get': {
method:'GET',
headers:{ 'Authorization' : user.auth,
'secret-key' : user.secretkey}
}
transformResponse : function(data, headersGetter){
return {content:data}; //transform octet stream into text, angular returns an array containing 1 character per element.
},
});
return methods;
};

在返回主体中我有文件内容(见下文)。我想下载它。这怎么可能 ?请注意,我无法将文件存储为 URL。

是否可以打开一个窗口,用好的标题进行其余调用并保存文件?

编辑

我需要能够很好地处理 50Mo 文件的解决方案。

我拥有的 PDF 文件内容示例:

%PDF-1.7
£´ÅÖçø
2 0 obj
[/ICCBased 3 0 R]
endobj
3 0 obj
<<
/Filter /FlateDecode
/Length 2596
/N 3
>>
stream
xwTSÙϽ7½PÐkhRH
½H.*1 JÀ"6DTpDQ¦2(à£C±"Q±ëDÔqpId­ß¼yïÍß÷~k½ÏÝgï}ÖºüÂLX ¡XáçÅg`ðlàp³³BøF|Ølø½º ùû*Ó?Áÿ¹Y"1PçòøÙ\É8=W%·Oɶ4MÎ0JÎ"Y2Vsò,[|öe9ó2<ËsÎâeðäÜ'ã9¾`çø¹2¾&ctI@Æoä±|N6(Ü.æsSdl-c(2- ãyàHÉ_ðÒ/XÌÏËÅÎÌZ.$§&\SáÏÏMçÅÌ07#â1ØYárfÏüYym²";Ø8980m-m¾(Ô]ü÷v^îDøÃöW~
°¦eµÙúmi]ëP»ýÍ`/²¾u}qº|^RÄâ,g+«ÜÜ\Kk)/èïúC_|ÏR¾Ýïåaxó8t1C^7nfz¦DÄÈÎâpùæøþuü$¾/ED˦L Lµ[ÈB@øøÃþ¤Ù¹ÚøÐX¥!@~(* {d+Ðï}ÆGùÍÑûÏþ}W¸LþÈ$cGD2¸QÎìüZ4 E@ê@èÀ¶À¸àA(q`1àD µ ­`'¨u 46ptcà48.Ë`ÜR0)ð
Ì@ÈRt CȲXäCP%CBH@ë R¨ªê¡fè[è(tº
C· Qhúz#0 ¦ÁZ°l³`O8ÁÉð28.·Àp|îOÃàX
?§:¢0ÂFBx$ !«¤i@Ú¤¹H§È[EE1PLÊ⢡V¡6£ªQP¨>ÔUÔ(j
õMFk¢ÍÑÎèt,:.FW Ðè³èô8ú¡c1L&³³³Ó9Æa¦±X¬:Öë
År°bl1¶
{{{;}#âtp¶8_\<N+ÄU
[.....]

最佳答案

我认为你可以使用 blob,比如

var content=...the content of your request;
var mypdf = new Blob(content, {type : 'application/pdf'});

并检查另一个问题中“盘子”的回答Using HTML5/Javascript to generate and save a file

(数组中每个元素一个字符看起来非常漂亮的二进制。可能你不需要转换它。https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data)

关于javascript - 使用需要 header 并提供内容的 REST 请求下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23951249/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com