亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我如何訪問存儲在本地存儲中的令牌中的數據?

我如何訪問存儲在本地存儲中的令牌中的數據?

開心每一天1111 2022-12-18 16:01:43
我正在使用 MERN 堆棧和 Redux。當用戶登錄時,我將一個 jwtToken 保存到本地存儲。我有一個用于提交信息的表單,該表單上的屬性之一是作者,我想自動填充登錄用戶的 ID。要訪問您需要登錄此表格,以便信息始終存在。任何人都知道我該怎么做?這是我剛才擁有的,但它不起作用。除了保存在本地存儲中,它還可以通過全局狀態訪問,但我真的不知道如何訪問這個或者哪個選項更好用。class AddSubject extends Component {  constructor() {    super();    const user = localStorage.getItem("jwtToken");    this.state = {      title: "",      summary: "",      description: "",      author: user._id,      errors: {},    };  }
查看完整描述

4 回答

?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

您需要解碼令牌并獲取 user_id。試試這個:


const jwt_decode = require('jwt-decode');

class AddSubject extends Component {

  constructor() {

    super();

    const token = localStorage.getItem("jwtToken");

    const data = jwt_decode(token);

    this.state = {

      title: "",

      summary: "",

      description: "",

      author: data.user._id,

      errors: {},

    };

  }


查看完整回答
反對 回復 2022-12-18
?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

由于您使用 redux 進行數據管理,因此最好在應用程序初始化期間將解碼后的令牌詳細信息從 localStorage 存儲到 redux store。這樣,用戶信息在全球范圍內可用,并且您不需要在組件安裝時訪問本地存儲,并且其他需要顯示用戶信息的組件也可以從全球商店共享它。



查看完整回答
反對 回復 2022-12-18
?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

在您的 componentDidMount 生命周期中:

window.localStorage.getItem(token)


查看完整回答
反對 回復 2022-12-18
?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

我不確定,但它可以幫助你:


class AddSubject extends Component {

  constructor() {

    super();

    this.state = {

      title: "",

      summary: "",

      description: "",

      author: localStorage.getItem("jwtToken")._id || '',

      errors: {},

    };

  }


查看完整回答
反對 回復 2022-12-18
  • 4 回答
  • 0 關注
  • 150 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號