Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox addon 如何将文件上载到服务器?_Firefox Addon - Fatal编程技术网

Firefox addon 如何将文件上载到服务器?

Firefox addon 如何将文件上载到服务器?,firefox-addon,Firefox Addon,我的Firefox加载项保存在临时文件夹中。结果我有了一个例子 如何将该文件上载到其他服务器?如果使用,我不知道如何将该文件传递给FormData 或者,我可能不应该只是下载文件并将其保存在临时文件夹中,因为该文件的唯一用途是上传到另一台服务器。可能,我应该将文件大小保持在内存中~20Kb?如果您将数据作为应用程序/x-www-form-urlencoded发布到服务器,那么您应该使用btoa对其进行base64编码,并将其作为POST参数之一包含在请求体中,即传递给XMLHttpRequest

我的Firefox加载项保存在临时文件夹中。结果我有了一个例子

如何将该文件上载到其他服务器?如果使用,我不知道如何将该文件传递给FormData


或者,我可能不应该只是下载文件并将其保存在临时文件夹中,因为该文件的唯一用途是上传到另一台服务器。可能,我应该将文件大小保持在内存中~20Kb?

如果您将数据作为应用程序/x-www-form-urlencoded发布到服务器,那么您应该使用btoa对其进行base64编码,并将其作为POST参数之一包含在请求体中,即传递给XMLHttpRequest.send的字符串:

postbody = "body=" + btoa(fileContents);
xhr.send(postbody);

我同意如果你只是下载文件并立即上传,您还可以将其保存在内存中,因为您可能会将其加载到内存中,以便对内容进行base64编码。

如果您将数据作为应用程序/x-www-form-urlencoded发布到服务器,那么您应该使用btoa对其进行base64编码,并将其作为POST参数之一包含在请求正文中,即字符串已传递到XMLHttpRequest.send:

postbody = "body=" + btoa(fileContents);
xhr.send(postbody);

我同意,如果您只是下载文件并立即上载,您最好将其保存在内存中,因为您可能会将其加载到内存中,以便对内容进行base64编码。

谢谢,Matthew。请您澄清1我如何获取文件内容,2如何将文件下载到内存,然后再上传?Re 1:我应该读取文件吗?如果您正在将文件读取到内存中,那么您应该需要一个NSI文件。您可以使用XMLHttpRequest下载它,然后使用responseText,按照我在答案中描述的方式上传它。如果你有一个NSI文件,那么是的,这个片段描述了如何从中读取。谢谢,Matthew。请您澄清1我如何获取文件内容,2如何将文件下载到内存,然后再上传?Re 1:我应该读取文件吗?如果您正在将文件读取到内存中,那么您应该需要一个NSI文件。您可以使用XMLHttpRequest下载它,然后使用responseText,按照我在答案中描述的方式上传它。如果您确实有一个NSI文件,那么是的,该代码段描述了如何从中读取。