[英]How to read the cookie on the client side (react) that was set via Passport on the Server side (node-express)?
如何讀取通過服務器端 (node-express) 上的 Passport 設置的客戶端 (react) cookie?
cookie 設置正確,可以在服務器端進行序列化和反序列化,如下面的代碼所示:
passport.serializeUser(function(user, done) {
done(null, user.id);
});
passport.deserializeUser(function(id, done) {
User.findById(id, function(err, user) {
done(err, user);
});
});
如何在客戶端(React)讀取這個 cookie?
我對 cookies 沒有太多經驗,但我見過以下解決方案:
import React from 'react';
import Cookies from 'js-cookie';
class App extends React.Component {
this.state = {
username: Cookies.get('username')
}
// more code....
}
import React from 'react';
// other imports...
import Cookies from 'universal-cookie';
const cookies = new Cookies();
class App extends React.Component {
this.state = {
username: cookies.get('username')
}
// more code....
還有許多其他人......但似乎要讀取 cookie,您必須知道username
或key
才能獲得它的值。 由於 Passport.js 在serializeUser
方法中創建了我的 cookie,我不知道key
是什么。 有誰知道關鍵值是什么或如何讀取護照創建的cookie?
cookie 將僅 HTTP 且在客戶端不可讀。 但是,您可以輕松地做到這一點:
然后,客戶端瀏覽器代碼只需對上述端點執行 Ajax GET。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.