Passaporte Stormpath Express salvar dados personalizados ou mesmo os dados predefinidos
Estou a analisar esta amostra do passaporte Expresso de Stormpath.
https://github.com/stormpath/stormpath-passport-express-sample
não consigo entender como é que pode publicar um formulário e gravar dados personalizados ou mesmo os dados predefinidos, como o nome e o apelido. No geral, eu iria gostar se eu pudesse obter um exemplo HTML(Jade ou EJS) com linhas que eu preciso escrever em app.js
ou index.js
. Tenho lutado com isto durante 4 noites.
2
Author: StartupEnthusiast, 2015-01-13
1 answers
Eu escrevi esse artigo e o projecto, e também sou o autor do express-stormpath. ( a nossa nova biblioteca, que torna estas coisas muito mais fáceis .
A maneira mais simples de fazer isto é numa rota (usando a nossa biblioteca de passaportes) é assim (nota, você pode precisar de actualizar para a última versão da nossa biblioteca de nós para fazer isto funcionar):
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!');
});
Se você está usando nossa biblioteca Express, você pode fazer isso um pouco mais fácil, aqui está um exemplo:
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);
1
Author: rdegges, 2015-01-13 16:58:14