我有两个服务器(A和B),我用axios从服务器A向B发送一个数据,并在另一个服务器上进行console.log,但是数据不在服务器A发送的消息中。
服务器A:
var http = require('http')
var axios = require('axios')
const data = {name: 'karo', age: 18, email: 'karoakhgar82@hotmail.com'}
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type' : 'application\json'})
res.end(JSON.stringify(data))
}).listen(1337,'127.0.0.1')
const api = axios.create({baseURL: 'http://127.0.0.1:1338'})
api.post('/', {
data: JSON.stringify(data)
})
.then(res => {
console.log(res)
})
.catch(error => {
console.log(error)
})
服务器B:
var http = require('http')
http.createServer(function(req, res){
console.log(req);
res.writeHead(200, {'Content-Type' : 'text/plain'})
res.end('hello world')
}).listen(1338,'127.0.0.1')
我也尝试了http请求,它是相同的
2条答案
按热度按时间bkkx9g8r1#
记录res.data而不是res
如果要在服务器B中记录从服务器A接收的数据:
服务器B目录中的
npm i body
。服务器B:2lpgd9682#
请求对象
req
不包含请求主体作为字符串,因为主体是由客户端流传输的,将其写入字符串意味着等待流传输完成,然后请求处理程序才能开始构建响应对象res
,但这将非常不灵活。下面的代码指示请求处理程序等待正文,然后记录它: