我是Javascript和Firefox插件编程的新手。
我使用附加组件SDK制作了一个附加组件,该附加组件记录了有关用户浏览活动的一些信息。我将file
API与一些硬编码的文件名一起使用。
现在,我想在服务器端分析那些日志文件,但是我不希望用户完成查找文件并手动上传的过程。我想向用户提供一个按钮;这些文件将被自动上传到服务器。
自动上载功能对于整个项目而言至关重要,因为它是一个面向研究的项目,如果用户必须手动上载数据,将很难从用户那里获取数据。
最佳答案
实际的文件上传(通过multipart/form-data
)实现起来相当复杂,但是由于您正在控制服务器端-为什么不接受常规的POST请求,而文件数据位于表单字段之一中?因此,您将代码发送到服务器的代码可能如下所示:
var file = require("sdk/io/file");
var {Request} = require("sdk/request");
var params = {};
params.log = file.read("c:\\foo\\bar.log", "b");
params.additional = "some additional form field";
Request({
url: "https://example.com/uploadlog",
content: params,
onComplete: function(response)
{
console.log("Request sent");
}
}).post();
您可以在任何触发该代码的地方放置一个按钮。
关于javascript - 如何使用firefox插件SDK从用户系统上载文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11878420/