[英]res.send Not sending any data - Express.js
所以我正在使用 Express.js 開發這個計算器應用程序,當我使用 res.send 方法時,我現在沒有收到任何類型的響應。 我希望我的網頁能夠向我發送calculator.js 文件中的總和。 我也在使用nodemon。 這是 HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Calculator</title>
</head>
<body>
<h1>Calculator</h1>
<form method="POST">
<input name='num1' placeholder='num1' type='text'>
<input name='num2' placeholder='num2' type='text'>
<button
type="submit" name="submit">Calculate</button></form>
<h1 class='answer'></h1>
</body>
</html>
這是calculator.js
const express = require('express');
const app = express();
const port = 3000;
const bodyParser = require("body-parser");
const {
json,
urlencoded
} = require('body-parser');
app.use(bodyParser.urlencoded({
extended: true
}));
app.get("/", function (req, res) {
res.sendFile(__dirname + "/index.html")
});;
app.post("/", function (req, res) {
console.log(req.body);
var num1 = Number(req.body.num1);
var num2 = Number(req.body.num2);
var sum = num1 + num2;
res.send(sum);
});
app.listen(port, () => console.log(`Example app listening on port port!`))
您不能使用res.send()
發送number
,它將作為http 狀態碼發送。 您可以簡單地將計算的sum
轉換為字符串,然后發送:
res.send(sum.toString())
res.send
在最新版本的 Express (4.17.1) 中已被棄用。 使用res.sendStatus
解決了我的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.