从后端到前端发送护照会话信息的最佳方法是什么?
我的应用程序适用于端口3000.前两个获取是用于Facebook登录和重定向.下一步是从数据库中获取用户数据(用户ID应存储在其中req.user)
routes.js:
app.get('/auth/facebook', passport.authenticate('facebook', { scope : 'email' }));
app.get('/auth/facebook/callback',
passport.authenticate('facebook', {
successRedirect : 'http://localhost:8000/',
failureRedirect : '/fail'
})
);
app.get('/auth/userdata', isLoggedIn, function(req, res) {
Donator.findById(req.user, function(err, fulluser) {
if (err) throw err;
res.json(fulluser);
})
});
function isLoggedIn(req, res, next) {
if (req.isAuthenticated()) {
next();
} else {
res.json(false);
}
};
Run Code Online (Sandbox Code Playgroud)
护照config.js
'facebookAuth' : {
'clientID' : 'secret',
'clientSecret' : 'secret',
'callbackURL' : 'http://localhost:3000/auth/facebook/callback'
},
Run Code Online (Sandbox Code Playgroud)
所以在我的Angular2应用程序中,我可以转到http://localhost:3000/auth/facebook,重定向到FB登录页面,如果成功重定向到http://localhost:3000/auth/login/callback哪个带我到http://localhost:8000/.
在我的Angular2应用程序中,适用于端口8000
getUser(){
this.http.get('http://localhost:3000/auth/userdata')
.map(res => …Run Code Online (Sandbox Code Playgroud) 我在使用 QFileDialog 在 PyQt4 中保存带有扩展名的文件(获取文件路径和附加扩展名)时遇到问题。我的 Python 代码如下所示:
dialog = QtGui.QFileDialog()
dialog.setDefaultSuffix(".json")
file = dialog.getSaveFileName(None, "Title", "", "JSON (.json)")
Run Code Online (Sandbox Code Playgroud)
它有效,路径正确,对话框标题和过滤器在对话框窗口中,但第二行被忽略。文件没有任何扩展名。
如何默认添加扩展名?我究竟做错了什么?