Sto cercando di mettere insieme una piccola applicazione usando NodeJS
, node-dbox
e Express
. Quando si richiede l'autorizzazione DropBox
- it's a 3 step process, è necessario prima ottenere request_token
, quindi l'utente li autorizza a visitare la pagina dropbox e solo successivamente richiedere , basato su request_token
e il fatto che l'utente abbia una richiesta autorizzata.Come mantenere il token del nodo-dbox tra gli aggiornamenti della pagina in NodeJS/Express
Tuttavia, per il momento ho servito la pagina per la fase 1 e 2 (ottenendo request_token
, e fornendo all'utente url) - request_token
esempio è andato !, così al punto 3 non posso richiedere un access_token
, perché Richiede il passaggio request_token
Sto cercando di salvare request_token
in un cookie, ma dato che contiene dati sensibili, inviarlo al cliente potrebbe non essere una buona idea. Qualche idea?
codice semplificata è qui sotto:
(function() {
var dbox = require('dbox'),
config = require('easy-config'),
express = require('express'),
dboxApp = dbox.app(config.dropbox_credentials),
app = express();
app.use(express.cookieParser());
app.get('/', function(req, res) {
dboxApp.requesttoken(function(status, request_token) {
res.cookie('request_token', JSON.stringify(request_token));
res.send("<a href='" + request_token.authorize_url + "' targe='_new'>authorize via dropbox</a><br/>" + "<a href='/next'>next</a>");
});
});
app.get('/next', function(req, res) {
var request_token = JSON.parse(req.cookies.request_token);
if(request_token) {
dboxApp.accesstoken(request_token, function(status, access_token) {
var client = dboxApp.client(access_token);
client.account(function(status, reply){
res.send(reply);
});
});
} else {
res.send('sorry :(');
}
});
app.listen(3000);
})();
domanda bonus: client
viene creato con access_token
, quindi o istanza di client o access_token
devono essere mantenuti in tutta pagina viene aggiornata così, che cosa è l'approccio migliore?
Hai mai una soluzione a questo? Sto lottando con la stessa cosa - come reindirizzare di nuovo da Dropbox alla mia app con il token di accesso corretto. – Lewis