使用Jade快速更改视图
问题描述:
我对节点场景非常陌生,我使用快捷键与翡翠并且设法使用简单的1页应用程序工作。目前,登录页面被用作默认页面,一旦用户通过数据库验证,就会调用函数loginUser()。使用Jade快速更改视图
我想要做的是改变我的观点,一旦进入这个功能,Iv'e尝试了几种方法,但没有运气到目前为止。
这里是如何在服务器启动一号
var express = require("express");
var app = express();
var port = 3700;
app.set('views', __dirname + '/tpl');
app.set('view engine', "jade");
app.engine('jade', require('jade').__express);
// Page 1
app.get("/", function (req, res) {
res.render("page");
});
// Page 2 (Once logged in)
app.get('/newpage', function (req, res) {
res.render('mainpage', {
title: 'Home'
});
});
app.get("/", function (req, res) {
res.send("It works!");
});
app.use(express.static(__dirname + '/public'));
如何得到我的第二个观点“/ NEWPAGE”的任何信息显示,一旦某个函数被调用我的index.js我的初步看法是会呈现不胜感激
谢谢!
答
app.get('/newpage', function (req, res)
函数告诉Express当存在对yourwebsite.com/newpage
的GET HTTP请求时,它将渲染标题为Home
的mainpage
。这看起来是正确的。
要回答你的问题,你只需要让客户端登录按钮成为这个/newpage
的链接,如果登录信息是正确的(我猜如果loginUser()
成功)。否则,请返回主页'/'
或显示your password was incorrect
作为页面或在同一主页上。
您可以在Express服务器中处理此逻辑,作为PUT或POST请求在其登录信息中发送app.post()
或app.put()
。您还可以在您的GET(app.get()
)请求标头中添加某种形式的身份验证,以确保客户端确实是他们所说的那个人。如果您以快递方式打印部分回复或请求对象,可以查看回复和请求的详细信息。 Express是整洁的,因为您可以在特定请求转到特定路由时添加功能,比如说,计算您获得的请求数或调试目的。
我已经删除了最后一条评论我明白现在要做什么,登录后我在页面上调用一个GET请求,我想允许登录用户看到,然后发送一个socket.emit消息“true”给客户端,我收到后可以更新视图。 感谢您的帮助! :d –