gpt4 book ai didi

javascript - 将文件从一台远程服务器发送到另一台远程服务器

转载 作者:行者123 更新时间:2023-11-28 10:15:11 26 4
gpt4 key购买 nike

我正在编写一个 Google Chrome 扩展程序。我有远程服务器上的二进制文件的 URL。我想将该文件发布到其他服务器。所以相关的函数应该是这样的。

function postFileToExampleCom(fileUrl) {
var file = ???; // Blob with data from file located at fileUrl

var form = new FormData();
form.append('file', file);

var request = new XMLHttpRequest();
request.open('POST', 'http://example.com/post/', true);
request.send(form);
}

FormData.append() 期望第二个参数是包含文件数据的 Blob 对象。获得它的最佳方式是什么?文件可能是已在事件选项卡中加载的图像,因此最好使用缓存而不是再次下载该文件。

UPD:我尝试使用另一个 XMLHttpRequest 设置 responseType = 'blob' 下载文件,但奇怪的是它返回空 response

最佳答案

“..文件可能是已在事件选项卡中加载的图像,因此最好使用缓存而不是再次下载该文件。”

  1. 如果您在本地保存文件(例如使用 localStorage 或 fileAPI) - 那么您应该确保读取该文件并取回文件,而不是数据的序列化版本。

  2. 我会调试“var file=???”行看看你到达那里的 obj 是什么。

  3. 最好的做法是为您的“请求”提供以下 3 个函数:onload、onerror 和 onprogress。

希望对您有所帮助。

关于javascript - 将文件从一台远程服务器发送到另一台远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6716735/

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