Javascript Ajax发布到Node.js服务器
我有一个使用express构建的节点应用程序,多年来我一直在尝试向节点服务器发送ajax post请求。然而,尽管我在这里读到了许多类似问题的答案,但我还是很难掌握我应该编辑哪些文件。很长一段时间以来,我一直试图在其中一个routes.js文件中使用http.createServer。这当然意味着我不能在与应用程序相同的端口上运行服务器,因为bin->www文件中已经实例化了一个服务器。所以今天早上我编辑了bin www文件,这样当数据发送到它时,它会记录一条消息。然而,尽管在第二台服务器上测试该函数时该函数已经起作用,但当我将其添加到bin->www文件中的服务器时,响应不再触发,因此相同的函数也不会触发。事实上,我甚至不认为我的ajax请求正在到达服务器。需要明确的是,ajax请求是用script.js编写的,它是公用文件夹中的一个客户端文件,正在发送到节点服务器,节点服务器在bin->www文件中实例化。这是我的密码:Javascript Ajax发布到Node.js服务器,javascript,ajax,node.js,express,Javascript,Ajax,Node.js,Express,我有一个使用express构建的节点应用程序,多年来我一直在尝试向节点服务器发送ajax post请求。然而,尽管我在这里读到了许多类似问题的答案,但我还是很难掌握我应该编辑哪些文件。很长一段时间以来,我一直试图在其中一个routes.js文件中使用http.createServer。这当然意味着我不能在与应用程序相同的端口上运行服务器,因为bin->www文件中已经实例化了一个服务器。所以今天早上我编辑了bin www文件,这样当数据发送到它时,它会记录一条消息。然而,尽管在第二台服务器上测试
***bin -> www file***
var http = require('http');
var util = require('util')
var server = http.createServer(app,function (req, res) {
console.log('Request received: ');
util.log(util.inspect(req))
util.log('Request recieved: \nmethod: ' + req.method + '\nurl: ' + req.url)
res.writeHead(200, { 'Content-Type': 'text/plain' });
req.on('data', function (chunk) {
console.log('GOT DATA!');
got = chunk.toString(data);
console.log(got)
});
res.end();
}).listen(3000);
console.log('Server running on port 3000')
***Script.js -> Client File***
$.ajax({
url: 'http://localhost:3000',
data: '{"abcdefghijklmnopqrstuvwxyz": ""}',
type: 'POST',
success: function (data) {
var ret = jQuery.parseJSON(data);
console.log(ret)
console.log('Success: ')
},
error: function (xhr, status, error) {
console.log('Error: ' + status);
},
});
请帮忙!非常感谢:)终于拿到了。我没有使用ajax,而是使用了一个简单的post请求。mar shampla: script.js(客户端) 和服务器回调(在路由中)
路线在哪里?没关系,我知道了。你说得对,回拨必须在路由中。谢谢回复!你做到了吗?@Lucas Costa是的,我把密码扔到下面了。如果您想知道我为什么要这样请求服务器:。这就是我一直在做的项目。不要太挑剔,我还在上高中P
$.post('/',
{
customData: favourites
},
function(data){
console.log("message sent");
});
router.post('/', function(req, res, next) {
var param = req.param('customData');
console.log(param+" = new received post");
console.log("old stormpath = "+req.user.customData.favLoi8ist);
req.user.customData.favList = param;
req.user.customData.save();
newD = param;
res.send(200, param);
});