下面是HTML和Javascript的计算器应用程序的示例。
当我用nodemon执行程序,访问localhost:3000
,并按下提交按钮时,错误显示在浏览器(Google Chrome)上。
[nodemon] starting `node calculator.js`
Server started on port 3000.
错误消息
执行程序时没有错误,那么我如何找到修复点呢?
Cannot POST /index.html
编号
index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h1>Calculator</h1>
<form action="/" method="post">
<input type="text" name="n1" placeholder="First Number">
<input type="text" name="n2" placeholder="Second Number">
<button type="submit" name="submit">Calculate</button>
</form>
</body>
</html>
calculator.js
const express = require("express");
const bodyParser = require("body-parser");
const app = express();
app.use(bodyParser.urlencoded({extended: true})); //store the numbers in the forms
app.get("/", function(req, res){
res.sendFile(__dirname + "/index.html"); //relative path
});
app.post("/", function(req, res){
var num1 = Number(req.body.n1);
var num2 = Number(req.body.n2);
console.log(num1, num2); //no results shown
var result = num1 + num2;
res.send("The result of the calculation is " + result);
});
app.listen(3000, function(){
console.log("Server started on port 3000.");
});
1条答案
按热度按时间sr4lhrrt1#
我已经测试了代码,似乎没有什么问题。
一些原因可能不适合你:
1.可能已关闭
VSCode
中的自动保存1.应用程序可能会干扰您的代码(已知某些浏览器扩展会导致这种情况)
1.路径有问题。
自动保存可以通过转到
File
,然后检查Auto Save
来重新打开。为了验证路径没有问题,您可以编辑您的问题以包含目录的图像,以便我们可以进一步帮助您。