ajax请求发送给node,如何从JQuery的AJAX请求的Node.js服务器发送数据(How to send data f...

我想做的事:

简单地发送一些数据(JSON为例),到Node.js的http服务器,使用jQuery Ajax请求。

出于某种原因,我不能管理获取服务器上的数据,因为它永远不会触发请求的“数据”事件。

客户代码:

$.ajax({

url: server,

dataType: "jsonp",

data: '{"data": "TEST"}',

jsonpCallback: 'callback',

success: function (data) {

var ret = jQuery.parseJSON(data);

$('#lblResponse').html(ret.msg);

},

error: function (xhr, status, error) {

console.log('Error: ' + error.message);

$('#lblResponse').html('Error connecting to the server.');

}

});

服务器代码:

var http = require('http');

http.createServer(function (req, res) {

console.log('Request received');

res.writeHead(200, { 'Content-Type': 'text/plain' });

req.on('data', function (chunk) {

console.log('GOT DATA!');

});

res.end('callback(\'{\"msg\": \"OK\"}\')');

}).listen(8080, '192.168.0.143');

console.log('Server running at http://192.168.0.143:8080/');

正如我所说的,它永远不会进入请求的“数据”事件。

评论:

1.它记录了“请求”接收消息;

2.响应是细,即时通讯能够处理回客户端上,具有数据;

任何帮助吗? 我这么想吗?

谢谢大家。

编辑:

评论代码的基础上,答案的最终版本:

客户代码:

$.ajax({

type: 'POST' // added,

url: server,

data: '{"data": "TEST"}',

//dataType: 'jsonp' - removed

//jsonpCallback: 'callback' - removed

success: function (data) {

var ret = jQuery.parseJSON(data);

$('#lblResponse').html(ret.msg);

},

error: function (xhr, status, error) {

console.log('Error: ' + error.message);

$('#lblResponse').html('Error connecting to the server.');

}

});

服务器代码:

var http = require('http');

http.createServer(function (req, res) {

console.log('Request received');

res.writeHead(200, {

'Content-Type': 'text/plain',

'Access-Control-Allow-Origin': '*' // implementation of CORS

});

req.on('data', function (chunk) {

console.log('GOT DATA!');

});

res.end('{"msg": "OK"}'); // removed the 'callback' stuff

}).listen(8080, '192.168.0.143');

console.log('Server running at http://192.168.0.143:8080/');

因为我想允许跨域请求,我添加的实现CORS 。

谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值