首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在nodejs中的另一个页面上发布数据

在nodejs中的另一个页面上发布数据
EN

Stack Overflow用户
提问于 2017-04-26 18:25:03
回答 4查看 4.4K关注 0票数 1

我是nodejs的新手。我正在尝试使用ejs引擎登录表单。我想要的只是使用post请求在欢迎屏幕中打印用户名和密码。问题是,如果我使用POST操作,它将打印我的数据,但不显示欢迎屏幕布局;如果我使用GET操作,它将显示屏幕布局,但没有数据。我已经在app.js文件中编写了代码。对吗??我在下面提到了我的app.js代码以供参考。提前谢谢。

代码:-

代码语言:javascript
运行
复制
app.post('/welcome', function(req, res) {
     res.send('Username is '+req.body.unm+'<br>Password is '+req.body.pwd);
});
EN

回答 4

Stack Overflow用户

发布于 2017-04-26 18:28:41

你面临的问题是什么?返回的字符串是否没有显示值?在使用模板引擎时,通常应该使用render而不是res.send来发送视图。

请查看ejs主页中提供的示例。

票数 0
EN

Stack Overflow用户

发布于 2017-04-26 18:30:52

在ejs npm页面上有一些非常有用的信息:https://www.npmjs.com/package/ejs

我建议您研究一下express包,它允许您为页面提供服务,因此您应该从以下内容开始:

代码语言:javascript
运行
复制
app.get('/', function(req, res){
  return res.sendFile(__dirname + '/index.html');
});

下面是一个有用的答案,它将帮助您解决问题:how to implement login auth in node.js

票数 0
EN

Stack Overflow用户

发布于 2017-04-26 18:35:39

如果您将express与ejs一起使用,则需要定义包含视图(.ejs文件)的文件夹,如下所示:

代码语言:javascript
运行
复制
var express = require('express')
app.use(express.static(__dirname + '/views')); // set the static files location for the static html

而不是res.send,而是这样响应:

代码语言:javascript
运行
复制
app.post('/welcome', function(req, res) {
        res.render('welcome', {username: req.body.unm, password: req.body.pwd});
});

在welcome.ejs中构建您的html,并为<%= username %><%= password %>放置占位符

项目库中views目录下的示例welcome.ejs文件:

代码语言:javascript
运行
复制
<div class="container">
    <p>Welcome<b><%= username %></b></p>
    <p>Your password is <%= password %> </p>
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43631496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档