Я пытаюсь получить и хранить токен доступа из Pocket API с помощью Node.js. Я могу получить токен запроса, перенаправить на страницу входа в Кармен, перенаправить обратно на свой сайт и, наконец, обменять токен запроса на токен доступа.Как сохранить access_token, полученный от OAuth для последующего использования?
Но вот где моя проблема лежит. Я не знаю, как я должен был на самом деле хранить токен, и без него я не могу совершать вызовы API (конечно). Вот соответствующий код:
//called when Pocket API redirects back to /getAccessToken
function getAccessToken(response, requestToken) {
restler.post("https://getpocket.com/v3/oauth/authorize", {
headers: { "Content-Type" : "application/json",
"X-Accept" : "application/json" },
data : JSON.stringify({consumer_key:CONSUMER_KEY,code:requestToken})
}).on("complete", function(data, res) {
if(res.statusCode == 200) {
var accessToken = data.access_token;
console.log("Access granted: " + accessToken);
//BUT HOW DO I STORE THE ACCESS TOKEN FOR USE OF API CALLS ??
}
response.writeHead(307, {Location: DNS}); //go back to site
response.end();
});
};
Я думал, что я должен хранить маркер доступа на стороне клиента, но я на самом деле не знаю, как идти о выполнении этого. Я пробовал использовать файлы cookie, но это, похоже, не сработало. Конечно, я, возможно, просто внедрил их неправильно.
Ваша помощь очень ценится.
Что вы пытаетесь использовать для печенья и что заставляет вас говорить, что он не работает? –
Должен был уточнить! Я использовал модуль узла [Cookies] (https://github.com/jed/cookies), и, хотя я мог заставить его работать, он, казалось, раздувал мой код и временами был ненадежным. Я не думал, что печенье будет решением, но если у вас есть какие-то предложения? – thebradbain