如何在express odeJS中从post请求中获取数据,并在提交后将用户重定向到html文件
how to get data from post request in express odeJS and redirect user to html file after submit
我刚刚红了这个帖子
我的快递代码是
var express= require('express');
var app= express();
var path= require('path');
app.use(express.static(path.join(__dirname,'public'))) //one way to server file
//app.use(express.static(__dirname,'/public'));
app.get('/',function(request, response){
response.send("responde send");
})
app.get('/userName',function(request, response){
response.send(request.query["userName"]);
})
app.post('/userName1',function(request,response){
response.send(request.body.userName);
console.log(request.body['userName']);
})
var server= app.listen(3001,function(){
var host = server.address().address
var port = server.address().port
console.log("listening "+port+ "port while the host"+host);
})
现在使用此代码处理get请求html是
<form action="/userName" method="get">
<input type="text" name="userName">
<input type="submit">
</form>
对于邮寄请求,我的html是
<form action="/userName1" method="post">
<input type="text" name="userName">
<input type="submit">
</form>
但是问题是如何获取请求后的数据??我试过这两种
response.send(request.body.userName);
console.log(request.body['userName']);
但是当这个链接代码和我学习的地方是一样的时候就不能工作了。还告诉我,当用户提交表单时,如何将用户重定向到任何html文件?
该链接已过时。ExpressJS现在使用body解析器作为一个单独的组件,这正是正确解析表单数据所需要的。
至于重定向,您可以使用javascript:
window.location = "https://www.google.com"
或者,在服务器上设置重定向标头:
res.setHeader("Location", "http://somewhere.com")
与相同
res.location("http://somewhere.com")
我使用的是Express4的Body Parser。因此,您需要将Body Parser分配给Express,然后,您可以执行以下操作:
app.post("userName1", function(req, res){
var username = req.body.userName;
});
是用粗体的方法,信息发送的路径,表单输入的名称分别发送。
至于重定向,您可以使用:res.redirect("URL")或:
res.send("<script> JAVASCRIPT REDIRECT CODE </script>")
希望它对你有用:)
您必须使用低于的Like
res.send("<script> window.location = 'http://localhost:8080'; </script>");
上面的代码对我有效。希望也对你有效。
相关文章:
- 如何在用户提交表单之前访问text_field的内容
- Iframe提交并将用户重定向回原始页面,但Iframe似乎仍然存在
- 如何在同一页面上显示用户提交的数据
- 如何在将鼠标悬停在提交/锚点上时检查复选框是否已选中,并显示提示用户这样做的警报
- 如何在用户提交后退按钮时重新加载同一页面
- 如何在用户提交链接时添加提取推文并将其发布到站点的功能
- 如何在用户输入提交后在同一页面中打印出表单字段值
- 如何在节点的沙盒环境中执行用户提交的javascript代码
- 流星 - 添加带有熨斗的路由后无法提交用户.路由器到登录和注册表单
- 纯javascript的进度图像加载程序仅当用户单击提交html表单时
- Jquery:如何处理"停止/取消”;用户停止表单提交时的事件
- 临时存储用户表单数据的最佳方式,用于表单重新提交
- 如何在用户单击提交按钮时为变量分配任意值
- 使用php提交表单,并使用ajax向用户提供响应
- 用户提交表单时按钮发生更改
- 阻止用户单击提交按钮
- 在表单中提交用户位置
- 用户登录后,将立即提交用户表单
- 点击提交用户输入的最佳方式
- 提交用户数据 jqgrid