gpt4 book ai didi

javascript - 将数据从客户端 JavaScript 页面发送到 Node 服务器

转载 作者:行者123 更新时间:2023-12-02 14:52:54 24 4
gpt4 key购买 nike

是否可以使用 AJAX XMLHttpRequest() 将数据从客户端 javascript 页面 POST 到 Node 服务器 (server.js)?我正在寻找的是JavaScript代码,它将接收 Node 服务器上的数据,特别是member_nm(“newName”)和member_email(“mail@google.com”)的值。我控制服务器。我还了解到,我还可以使用 GET 通过查询字符串发送文本值。下面是通过事件处理程序从客户端 JavaScript 页面发送的请求:

document.getElementById("btnAddMember").addEventListener("click", function()
{
var request = new XMLHttpRequest();
var path = "/Users/Admin/WebstormProjects/projectName/server.js";
request.onreadystatechange = function()
{
if ( request.readyState === 4 && request.status == 200 )
{
request.setRequestHeader("Content-Type", "text/plain; charset=UTF-8");
request.open("POST", path, true);
request.send("member_nm=newName&member_email=mail@google.com");
}
};
});

最佳答案

您需要设置服务器来接受此发布请求,最简单的方法是将 Express 与 bodyParser 中间件一起使用,如下所示:

var express = require('express');
var server=express();
var bodyParser= require('body-parser');

server.use(bodyParser.json());

server.post('/', function(req, res){
if(req.body){
// get the params from req.body.paramName
}
});

server.listen(8222, function(){
console.log('listening for requests ..')
});

在您的客户端代码中,更改“路径”以指向服务器 url:port,我将把它们放在 onReadyStateChange 之外:

request.setRequestHeader("Content-Type", "text/plain; charset=UTF-8");
request.open("POST", path, true);
request.send("member_nm=newName&member_email=mail@google.com");

关于javascript - 将数据从客户端 JavaScript 页面发送到 Node 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36042871/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com