[英]A page can not be found on Node.JS server
所以,我有一张注册表。 每当一个用户按下“提交”按钮时,我都希望该用户被重定向到另一个名为(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
(或所需的任何路径)定义帖子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.