Javascript 在Express中收到POST请求时登录
我最近开始使用Express framework学习Node.js。我创建了一个简单的服务器,并附加了一个HTML文件,其中的表单由一个类型为submit的按钮组成,该按钮用于向服务器发送post请求。它不会给我任何错误,但当我试图在按下submit按钮后将消息记录到控制台时,什么也没有发生。我很确定这与HTML表单语法有关,但我永远也不能太确定。以下是HTML:Javascript 在Express中收到POST请求时登录,javascript,html,node.js,express,post,Javascript,Html,Node.js,Express,Post,我最近开始使用Express framework学习Node.js。我创建了一个简单的服务器,并附加了一个HTML文件,其中的表单由一个类型为submit的按钮组成,该按钮用于向服务器发送post请求。它不会给我任何错误,但当我试图在按下submit按钮后将消息记录到控制台时,什么也没有发生。我很确定这与HTML表单语法有关,但我永远也不能太确定。以下是HTML: <html lang="en" dir="ltr"> <head> <meta charset
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Test</title>
</head>
<body>
<form class="test" action="http://localhost:8000/example" method="post">
<input type="submit" name="but" value="Press me">
</form>
</body>
</html>
改变这个
app.use("/", (req, res) => {
res.sendFile(__dirname + "/index.html");
});
对此
app.get("/", (req, res) => {
res.sendFile(__dirname + "/index.html");
});
改变这个
app.use("/", (req, res) => {
res.sendFile(__dirname + "/index.html");
});
对此
app.get("/", (req, res) => {
res.sendFile(__dirname + "/index.html");
});
这是因为
app.use()
被视为应用程序的中间件。要正常工作,您应该使用app.get()
。这是更详细的解释。另一种选择是将html作为静态内容提供,您可以了解更多
要正常工作,应将代码更改为:
app.get("/", (req, res) => {
res.sendFile(__ dirname + "/index.html");
});
您还可以将HTML修改为:
<form class="test" action="/example" method="post">
因为它在同一个主机中。在对其他主机执行操作时,您只需使用完整的url。之所以出现此情况,是因为
app.use()
被视为应用程序的中间件。要正常工作,您应该使用app.get()
。这是更详细的解释。另一种选择是将html作为静态内容提供,您可以了解更多
要正常工作,应将代码更改为:
app.get("/", (req, res) => {
res.sendFile(__ dirname + "/index.html");
});
您还可以将HTML修改为:
<form class="test" action="/example" method="post">
因为它在同一个主机中。在对其他主机执行操作时,您只需使用完整的url。使用,
应用程序。使用(\uu dirname+“/”)
如果您希望它成为您的公共显示文件夹,请使用,应用程序。使用(\uu dirname+“/”)
如果您希望它成为您的公共显示文件夹,我可以设法使它不将我转移到另一页f。E示例,它只是因为我认为它可以解决问题,但它没有,我想保留当前页面。这又是如何解决我的问题的呢?我能不能让它不把我转到另一页f。E示例,它只是因为我认为它可以解决问题,但它没有,我想保留当前页面。这又是如何解决我的问题的呢?