gpt4 book ai didi

javascript - Node.JS 服务器上找不到页面

转载 作者:行者123 更新时间:2023-11-29 19:11:53 24 4
gpt4 key购买 nike

所以,我有一张注册表。每当一个用户按下提交按钮时,我希望该用户被重定向到另一个名为(menus.html)的页面,而且,当用户被重定向时,我想在服务器端运行一个查询并将他的用户名和密码写入数据库。不幸的是,这不起作用,因为找不到 (menus.html)。那么为什么menus.html不在服务器上,而login.html却在服务器上呢?我的错误是:

错误:http://127.0.0.1:3000/menus.html - 404未找到

前端:

$("#submit_reg").click(function(){
var username = $("#usr").val();
var password = $("#pwd").val();

$.ajax({
url : "menus.html",
type : "POST",
data : {
user: username,
pass: password,
},
success : function(data){
console.log("The data :) " + data + " :) " + "has been posted to menus.html");
}
});
});

服务器端:

var app = require('express')();
var mysql = require('mysql');
var bodyParser = require('body-parser');
var db = mysql.createConnection({
host : "127.0.0.1",
user : "root",
password : "",
database : "user_data",
port : 3306
});

db.connect();

app.get('/',function(req, res){
res.sendFile(__dirname+'/login.html');
});
app.post('/menus',function(req, res){
res.sendFile(__dirname+'/menus.html');
});
app.listen(3000);

最佳答案

在您的客户端脚本中,您将发布到 menus.html,而不是 /menus

除了为 / 显式定义的 GET 处理程序(发送 login.html)之外,您没有任何设置来实际提供静态内容。您为菜单定义的唯一内容是 /menus,它与 /menus.html 不同。

您应该做的是对静态文件使用 Express 静态模块,然后从那里定义您的帖子 /menus (或您想要的任何路径),就像您已经开始做的那样。

关于javascript - Node.JS 服务器上找不到页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43020142/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com