Javascript 节点Js

Javascript 节点Js,javascript,node.js,heroku,formidable,Javascript,Node.js,Heroku,Formidable,在我的本地Web服务器上,如果我与邮递员一起发送post请求,则以下代码可以完美地工作 var postData; var form = new formidable.IncomingForm(); form.parse(req,function(err,fields,files){ postData = fields; }); var userName = postData.userName; var password = p

在我的本地Web服务器上,如果我与邮递员一起发送post请求,则以下代码可以完美地工作

    var postData;

    var form = new formidable.IncomingForm();
    form.parse(req,function(err,fields,files){
        postData = fields;
    });

    var userName = postData.userName;
    var password = postData.password;
在Heroku上,我得到以下错误:

TypeError:无法读取未定义的属性“userName”


局部变量postData是一个表单对象。在Heroku上,它没有定义。

这是因为node.js的异步特性。试试这样的东西-

var userName, password;

form.parse(req,function(err,fields,files){
        postData = fields;
        userName = postData.userName;
        password = postData.password;
    });