我用 PHP 开发 Web 系统,现在我对 NODEJS 感到非常兴奋。
尽管这不是一个好的做法,但在我看来,很多时候都会这样做:
如果用户未登录,他们会重定向。
<?php
session_start();
if(!isset($_SESSION['login']) || 4 !== (integer)$_SESSION['id_perfil_sistema']){
header("Location: /vault/");
}
?>
有时我会获取 session 数据以根据登录的用户自定义页面
<li style="background-color:#ddd;">
<a style="color:blue;" href="#">
<?php echo ucwords($_SESSION['nomeusuario']); ?>
</a>
</li>
<input type="hidden" name="theOrigin" value="<?=$_SESSION['origin'];?>" />
<script type="text/javascript">
var x = <?php echo $_SESSION['session_variable']; ?>;
</script>
我学会了在nodejs中创建 session 。 =)
在 javascript 中获取 session Nodejs 的最佳方法是什么?
我正在使用nodejs和express。
亲切的问候
最佳答案
一旦包含了快速 session 中间件 ( https://github.com/expressjs/session ),您应该能够从任何请求对象获取 session
例如,将所有未登录的用户重定向到“/login”,可以在每个请求上编写为快速中间件,如下所示:
app.use(function(req, res, next) {
if(!req.session.login){
res.redirect("/login");
return;
}
next();
});
并将 session 添加到标记(假设使用 Jade 或其他快速模板中间件)
JS
app.get('/', function (req, res) {
res.render('index', { nomeusuario: req.session.nomeusuario });
});
Jade (示例)
html
body
h1= nomeusuario
注意:代码未经测试,只是一个示例
关于javascript - 将 php 迁移到 nodejs - 在客户端处理 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35747393/