2015-03-02 93 views
1

在客户端,我使用表单元素生成这个json。传输json到浏览器

var ServerUser = []; 

var inputs = $('input.email'), tmp; 

$.each(inputs, function(i, obj) { 

    tmp = { 

    'title': $(obj).attr('title'), 
    'name': $(obj).val(), 
    'age' : $(obj).siblings('.age').val() 
    }; 


    ServerUser.push(tmp); 

    personString = JSON.stringify(ServerUser); 

    console.log(personString); 


}); 

如何将此信息传输到我的Node.js服务器?我不想使用expressjs框架。当我在本地主机上提交表单时,我应该得到一个包含电子邮件和年龄和标题的json数据。任何帮助将非常感激。

回答

0

在您的服务器:

function (req, res) { 
    if (req.method == 'POST') { 
     var textData = ''; 
     req.on('data', function (data) { 
      textData += data; 
     }); 
     req.on('end', function() { 
      var jsonData = JSON.parse(textData)); 
      console.log(jsonData); //This is the data you might want to parse  
     }); 
    } 
} 

在您的客户端形式编码格式不能发送此。如果你通过jQuery的ajax发送这个,

$.ajax({ 
    type: "POST", 
    url: "/your_end_point", 
    processData: false, //This prevents jQuery from parsing your data 
    contentType: 'application/json', 
    data: personString, 
    success: function() { } 

}); 
+0

我在命令提示符中出现此错误。 var server = http.createServer(function(req,res){ ^^^ SyntaxError:意外的令牌var – Natasha 2015-03-03 05:37:40

+0

在您的完整代码发布到某处? – ssp 2015-03-03 06:01:50

+0

可以发送您的邮件吗? – Natasha 2015-03-03 06:13:17