Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js NodeJs Express,在视图中显示会话_Node.js_Session_Express_Ejs - Fatal编程技术网

Node.js NodeJs Express,在视图中显示会话

Node.js NodeJs Express,在视图中显示会话,node.js,session,express,ejs,Node.js,Session,Express,Ejs,我有一个用express 3编写的服务器,我使用EJS作为模板引擎,我想知道如何在视图中显示会话变量 app.js /** *模块依赖关系。 */ 会话已创建,我可以在firebug中看到它,但我看不到如何在视图中显示它,我执行了以下操作,并出现以下错误: 500 ReferenceError: C:\Users\user\workingFolder\views\Signup.ejs:27 25| <div> 26| <form action="/Register" metho

我有一个用express 3编写的服务器,我使用EJS作为模板引擎,我想知道如何在视图中显示会话变量

app.js /** *模块依赖关系。 */

会话已创建,我可以在firebug中看到它,但我看不到如何在视图中显示它,我执行了以下操作,并出现以下错误:

500 ReferenceError: C:\Users\user\workingFolder\views\Signup.ejs:27 25| <div> 26| <form action="/Register" method="post"> >> 27| <div class="error-message"><%= response %></div> 28| <label for="username">Username<b style="color:red;">*</b>:</label> 29| <input type="text" id="username" name="username"><br> 30| <label for="password">Password<b style="color:red;">*</b>:</label> response is not defined
500引用错误:C:\Users\user\workingFolder\views\Signup.ejs:27 25 | 26 |>>27 | 28 |用户名*:29 |
30 |密码*:未定义响应
以下是我的查看代码:

....................
....................
<form action="/Register" method="post">
<div class="error-message"><%= response %></div>
                    <label for="username">Username<b style="color:red;">*</b>:</label>
                    <input type="text" id="username" name="username"><br>
                    <label for="password">Password<b style="color:red;">*</b>:</label>
                    <input type="password" id="password" name="password"><br>
                    <label for="confirmpassword">Confirm Password<b style="color:red;">*</b>:</label>
                    <input type="password" id="confirmpassword" name="confirmpassword"><br>
                    <label for="email">Email<b style="color:red;">*</b>:</label>
                    <input type="text" id="email" name="email"><br>
                    <input type="submit" value="Register">
                </form> 
................
................
。。。。。。。。。。。。。。。。。。。。
....................
用户名*:

密码*:
确认密码*:
电邮*:
................ ................
如果您想查看调试会话,我建议使用快速调试工具栏,如下所示:

否则,您需要将req.session传递到模板上下文中,并可能将其作为JSON输出

res.render('Signup.ejs', {
    layout:false,
    session: req.session
});
在模板中:

<%= JSON.stringify(session) %>


您好,谢谢您的回复,我按照您在回答中写的那样做了,但我收到了相同的错误消息
500 ReferenceError:…“会话未定义”
在我的注册视图上,它听起来像是在验证视图加载上的会话变量,但没有找到它。请尝试--在节点ejs中,呈现的范围是局部变量,因此,这将打印出您有权访问的所有内容。我将我的路径从/Register更改为/Signup,这样我就可以在相同的视图中开始了,现在这正在工作
我看到我的会话:{“cookie”:{“originalMaxAge”:null,“expires”:null,“httpOnly”:true,“path”:“/”,“消息”:“注册时发生了EROR!”我尝试将session:req.session更改为session:req.session.response,它可以正常工作我现在看到会话错误消息:)谢谢
<%= JSON.stringify(session) %>