node.js - 将数据从一个节点 js 发送到另一个节点并在另一个节点 js 上显示发送的数据
问题描述
我正在尝试将数据从一个节点 js 服务器发送到另一个节点并显示发送的信息。示例服务器 A 和服务器 B。服务器 A 向服务器 B 发送数据,服务器 B 将显示服务器 A 发送的信息,并将响应返回给服务器 A。基本上我的程序就像一个支付页面和一个银行服务器页面。将付款详情发送到银行服务器,如果银行服务器点击接受,它将发送回付款页面并继续交易。
这是我的付款页面代码:
var postData = JSON.stringify({ user: cardDetails });
const options = {
hostname: 'localhost',
port: 3001,
path: '/bank',
method: 'POST',
headers: {
'content-type': 'application/json',
'accept': 'application/json'
}
};
const httpreq = http.request(options, (res) => {
res.setEncoding('utf8');
res.on('data', (chuck) => {
console.log(`BODY: ${chuck}`);
});
res.on('end', () => {
console.log('No more data in response.');
});
});
httpreq.on('error', (e) => {
console.error(`problem with request: ${e.message}`);
})
//write data to request body
httpreq.write(postData);
httpreq.end();
这是我的银行服务器端代码:App.js
var express = require("express");
var path = require("path");
var bodyParser = require("body-parser");
var express = require('express');
var app = express();
var serverPort = 3000;
var httpServer = require('http').Server(app);
// ejs template path
app.set("views", path.join(__dirname, "server/views/pages"));
// view engine setup
app.set("view engine", "ejs");
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
//import order tracking
var bank = require('./server/controllers/bank');
app.get("/bank-server", bank.bankSystem);
app.post("/bank", bank.add);
console.log("Connected!")
app.listen(3001);
这是我的 bank.js 代码:
exports.add = function (req, res){
console.log(req.body.user.cardName);
res.sendStatus(200);
};
exports.bankSystem = function (req, res){
console.log("Bank Page Working!")
res.render('bankServer', {
name: "empty"
})
}
最后是我的 bankServer.ejs 代码:
<h1>Connection Worked!</h1>
<p>Card Name is <%= name %></p>
这是支付节点 js 的输出。CardName 输入 = Raysonkira1 这是银行服务器节点 js 的输出。收到卡名
解决方案
在 Bank.js 中,您只是发送状态而不是响应。
exports.add = function (req, res){
console.log(req.body.user.cardName);
res.sendStatus(200);
// send the response data here, for example
res.send("Hello from the bank!");
};
推荐阅读
- php - Unable to change the WordPress tinymce editor font
- python - The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() with index function
- javascript - Firebase Firestore - committing array objects as separate documents
- python - 散景自定义布局
- google-tag-manager - Does Google Tag Manager interpret a variable with string value 'false' as a boolean false?
- reporting-services - 矩阵子行组的百分比
- java - Cannot run wordcount example in flink
- html - 笑脸:放松:表情符号不在 html 中显示☺
- r - Mean/sd: Figure out the mean and standard deviation for each group. And then the one closer to one of the groups is assigned that
- python - Read multiline JSON using apache beam / google cloud dataflow