Javascript 带有文件上传的HTTP POST

Javascript 带有文件上传的HTTP POST,javascript,angularjs,protractor,Javascript,Angularjs,Protractor,我不熟悉javascript/量角器,正在尝试编写代码,将文本文件发布或上传到REST端点,具体如下所示。我无法让它工作,也不知道为什么它会失败。任何人都可以验证这一点或提出更好的解决方案,最好是使用示例代码。我在网上查过很多信息,但无法直接应用 var request = require('request'); var fs = require('fs'); var path = require('path'); var form = new FormData(); form.a

我不熟悉javascript/量角器,正在尝试编写代码,将文本文件发布或上传到REST端点,具体如下所示。我无法让它工作,也不知道为什么它会失败。任何人都可以验证这一点或提出更好的解决方案,最好是使用示例代码。我在网上查过很多信息,但无法直接应用

var request = require('request');
var fs = require('fs');
var path = require('path');   
var form = new FormData();
    form.append('agency', 'California');
    form.append('siteType', 'EF');
    fileName = "test.txt";
    var filePath = path.resolve(__dirname, "../resources/upload/" + fileName);
    fs.writeFileSync(filePath,
                     "This is a test txt file");

    form.append('file', fs.createReadStream(absolutePath));

    request.post({url: restServiceUrl, formData: form},
    function optionalCallback(err, httpResponse, body) {
        if (err) {
            console.error('upload failed:', err);
          }
            console.log('Upload successful!  Server responded with:', body);
         });

xhr.sendformData,我不确定您的require'request'是否也使用它。@Nicol,根据您的评论尝试使用XmlHttpRequest。您能告诉我如何将文本文件附加到FormData对象吗?该文件必须由用户选择,从路径读取,不允许任何浏览器。