Javascript 在JSON node.js中使用变量

Javascript 在JSON node.js中使用变量,javascript,json,node.js,Javascript,Json,Node.js,我正在编写一些代码,允许我使用HTTP&Express从两个节点实例来回发送消息 每个客户端生成一个UUID类型的标识,然后将其发送到主服务器进行存储和身份验证 这是客户端,您可以在底部看到,它生成了我认为是json字符串的内容,我在包含ID之前分配了一个变量,我试图使用此ID发送到服务器进行处理 Client.js var request = require('request'); var sendservlet = request.post; var fs = require('fs');

我正在编写一些代码,允许我使用HTTP&Express从两个节点实例来回发送消息

每个客户端生成一个UUID类型的标识,然后将其发送到主服务器进行存储和身份验证

这是客户端,您可以在底部看到,它生成了我认为是json字符串的内容,我在包含ID之前分配了一个变量,我试图使用此ID发送到服务器进行处理

Client.js

var request = require('request');
var sendservlet = request.post;
var fs = require('fs');
var path = require('path'); 
var crypto = require('crypto');

if (fs.existsSync('foo.txt')) {
    console.log('Found ');
    fs.readFile('foo.txt', "utf-8" ,  function (err, data) {
  if (err) throw err;
  console.log(data);
});

} else {
    console.log("Did not find file, i must first register you to the server.");
    function randomValueHex (len) {
    return crypto.randomBytes(Math.ceil(len/2))
        .toString('hex') 
        .slice(0,len);   
}
var ID = randomValueHex(7)
console.log("Your New Identification Number Is: " + ID);

sendservlet(
    'http://192.168.1.225:3000',
    { form: { key: ID } },
    function (error, response, body) {
        if (!error && response.statusCode == 200) {
            console.log(body)
            console.log(ID)
        }
    }
);
}
Server.JS

var express = require('express');
var bodyParser = require('body-parser')
var app = express();
app.use(bodyParser.urlencoded({ extended: false }));
var crypto = require('crypto');

app.post('/', function (req, res) {
  res.send('POST request to the homepage');
console.log(req.body.form.key);
});

var server = app.listen(3000, function () {
  var host = server.address().address;
  var port = server.address().port;

  console.log('Example app listening at http://%s:%s', host, port);
});
服务器似乎无法读取它,我相信我不能这样调用变量

为了帮助缩小这个问题的范围,我严格地询问为什么不能在中传输ID变量

sendservlet(
        'http://192.168.1.225:3000',
        { form: { key: ID } },

非常感谢您提供的任何建议

而不是
console.log(req.body.form.key)
,您只需要
console.log(req.body.key)


form
键正是
request
用于(基本上)“这是我的表单数据,所以这是要发布到URL的内容。”在
request
端的
form
中的任何内容都会被放入
express
端的
req.body
中。因此,您需要
req.body.key

安装Wireshark并查看在客户端和服务器之间发送的数据包。这将非常有启发性,因为您的核心问题是这一部分:“它生成我认为是json字符串的内容”您在执行
console.log(req.body)
时看到了什么?