如果我编写以下代码,则会显示“ Hello World”,但不会显示“ Hey from function”。我究竟做错了什么?如果尝试从调用的函数写入控制台,则相同。似乎没有被调用。
这是对node.js的非常基本的测试
const http = require('http');
const express = require('express');
const app = express();
const port = 3000;
function writetest(req, res) {
res.send("Hey from function");
}
app.get('/nodejs/', function(req, res) {
res.send('Hello World!');
writetest(req,res);
});
app.listen(port, () => console.log(`Example app listening on port ${port}!`));
没有错误消息,似乎不调用函数。
答案 0 :(得分:3)
使用res.write()
,您必须在最后致电res.end()
。
由于res.send()
内部调用res.end()
,因此您无法再写入res
答案 1 :(得分:2)
答案 2 :(得分:0)
由于HTTP限制,您的用例是不可能的,您不能发送两个响应。因此,您不能两次拨打res.send
答案 3 :(得分:0)
您无法在一个api调用中执行两次res.send
。您可以使用if else
循环执行此操作,但同时无法执行两个res.send
。