Coisas que eu quero fazer
Este código passa dados JSON do JavaScript do lado do cliente para o servidor Node.js.
implementação
Implementação do lado do cliente
A implementação do lado do cliente é a seguinte:
O URL é o URL de destino. Por favor, altere-o conforme necessário.
`obj` é o JSON (objeto) a ser enviado.
const Http = new XMLHttpRequest();
const url='http://127.0.0.1/test';/// target
Http.open("POST", url);////////open with POST
let obj = {number:20, aaa:"ああああ"};////JSON to send
Http.send(JSON.stringify(obj));////convert JSON to String and sendImplementação do lado do servidor
Implemente da seguinte forma:
Quando a função de retorno de chamada passada para createServer é invocada (quando uma requisição chega), o corpo (conteúdo) da requisição ainda não chegou, portanto, você precisa definir os eventos de dados e de término para a requisição.
const server = http.createServer((req, res) => {
if (req.url == "/test") {
let body = [];
req.on('data', (chunk) => { /////get Contents with async
body.push(chunk);
}).on('end', () => {
body = Buffer.concat(body).toString();
let obj = JSON.parse(body); ////convert string to json
});
} else{
///other process
}
});
Consegui recuperar os valores no servidor em formato JSON, conforme mostrado abaixo.
Resultado
Consegui enviar dados JSON do cliente para o servidor Node.js.
Sites que utilizei como referência

Get request body from node.js's http.IncomingMessage
I'm trying to implement a simple HTTP endpoint for an application written in node.js. I've created the HTTP server, but now I'm stuck on reading the request con...


コメント