我正在运行Stormpath Express Passport的此示例应用程序https://github.com/stormpath/stormpath-passport-express-sample
我无法解决如何发布表单并保存customData甚至是默认数据(例如给定名称和姓氏)的问题。总的来说,如果我能得到一个HTML(Jade或EJS)示例,其中包含需要在app.js
或index.js
中编写的行,我将不胜感激。我已经为此苦苦挣扎了四个晚上。
我已经尝试了Express,Stormpath的多个教程,但是没有一个可以与该示例应用程序一起使用。我总是不得不安装多个新模块,但是即使那样也没有任何作用。
如果来自Stormpath的人或真正有此经验的人能帮助我解决我的问题,并且也许也更新他们在网站上的教程,我将不胜感激,因为有些人似乎已经过时了。
最佳答案
我写了该文章和项目,同时也是express-stormpath(我们的新库,这使事情变得容易得多)的作者。
最简单的方法是在路由中(使用我们的通行证库),就像这样(请注意,您可能需要升级到最新版本的Node库才能完成此工作):
req.user.getCustomData(function(err, data) {
data.someValue = 'blah';
data.someOtherValue = {
woot: 'hi',
nope: 'there',
};
data.save(); // persist this data to Stormpath
res.send('done!');
});
如果您使用的是Express库,则可以更轻松地完成此操作,下面是一个示例:
var express = require('express');
var stormpath = require('express-stormpath');
var app = express();
app.use(stormpath.init(app, {
expandCustomData: true,
}));
app.get('/data', stormpath.loginRequired, function(req, res) {
req.user.customData.color = 'black';
req.user.save();
res.send('stored data!');
});
app.listen(3000);
关于node.js - Stormpath Express Passport保存customData甚至默认数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27923911/