Javascript form()抛出';未定义不是一个函数';节点错误

Javascript form()抛出';未定义不是一个函数';节点错误,javascript,node.js,email-attachments,request.form,Javascript,Node.js,Email Attachments,Request.form,我想在节点中的请求上创建一个表单,以便向电子邮件添加附件。据我所知,在multipart/formdata(multipartformuploads)部分中,我应该能够使用 var r=request.form() 但是我在控制台中得到了这个错误 var fd = request.form(); ^ TypeError: undefined is not a function 有人能告诉我为什么会发生这种情况,以及如何解决它吗。提前谢谢 更新

我想在节点中的
请求
上创建一个表单,以便向电子邮件添加附件。据我所知,在multipart/formdata(multipartformuploads)部分中,我应该能够使用

var r=request.form()

但是我在控制台中得到了这个错误

var fd = request.form();
                          ^
TypeError: undefined is not a function
有人能告诉我为什么会发生这种情况,以及如何解决它吗。提前谢谢

更新

查看链接文档,并根据下面Chris G的建议,我再次将代码更改为:

     var r = request.post(reqOptions, function (err, resp) {
        //console.log(resp.body);
        //console.log(resp.statusCode);   
        if (err) {
          return deferred.reject({
              code: _.get(resp, 'statusCode'),
              reason: err.message || err.errmsg
          });
        } ...
      );
      var form = r.form();
      form.append('attachmentA',fs.createReadStream(path.join(__dirname, 'abc.jpg')));
现在我得到以下错误

{ code: undefined, reason: 'write after end' }

.form()
只能在
request.post(…)
上调用,而不能在
request
本身上调用。如何使用
request.post(reqOptions,function(err,resp){if(err)…console.log(resp)}
。如何在发布后添加表单数据?感谢您的回复。在您链接到的示例代码中,使用
。表单()
是在
之后完成的。仅使用单个参数调用post()
。我假设在这种情况下,只有调用
表单。提交()
。看这里:哦,我错过了。谢谢你指出。我做了这个
var r=request.post(…);var form=r.form();form.append('attachmentA',fs.createReadStream(path.join(u dirname,'abc.jpg'));
但是我得到了一个
{code:undefined,reason:'write after end'}
。听起来好像它说它可以“写”因为它已经完成了,你知道怎么了吗?