¸üÐÂʱ¼ä:2023Äê09ÔÂ19ÈÕ10ʱ43·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

¾ßÌå˼·£º
µÇ¼³É¹¦ºó£¬·þÎñ¶Ë»á·µ»ØÒ»¸ötoken(¸ÃtokenµÄÊÇÒ»¸öÄÜΨһ±êʾÓû§Éí·ÝµÄÒ»¸ökey)£¬Ö®ºóÎÒÃǽ«token´æ´¢ÔÚ±¾µØcookieÖ®ÖУ¬ÕâÑùÏ´δò¿ªÒ³Ãæ»òÕßË¢ÐÂÒ³ÃæµÄʱºòÄܼÇסÓû§µÄµÇ¼״̬£¬²»ÓÃÔÙÈ¥µÇÂ¼Ò³ÃæÖØÐµÇ¼ÁË¡£
ps:ΪÁ˱£Ö¤°²È«ÐÔ£¬ÎÒ˾ÏÖÔÚºǫ́ËùÓÐtokenÓÐЧÆÚ(Expires/Max-Age)¶¼ÊÇSession£¬¾ÍÊǵ±ä¯ÀÀÆ÷¹Ø±ÕÁ˾ͶªÊ§ÁË¡£ÖØÐ´ò¿ªÓÎÀÀÆ÷¶¼ÐèÒªÖØÐµÇ¼ÑéÖ¤£¬ºó¶ËÒ²»áÔÚÿÖ̶ܹ¨Ò»¸öʱ¼äµãÖØÐÂË¢ÐÂtoken£¬Èúǫ́Óû§È«²¿ÖØÐµÇ¼һ´Î£¬È·±£ºǫ́Óû§²»»áÒòΪµçÄÔÒÅʧ»òÕ߯äËüÔÒò±»ÈËËæÒâʹÓÃÕ˺š£
Óû§µÇ¼³É¹¦Ö®ºó£¬ÎÒÃÇ»áÔÚÈ«¾Ö¹³×Órouter.beforeEachÖÐÀ¹½ØÂ·ÓÉ£¬ÅжÏÊÇ·ñÒÑ»ñµÃtoken£¬ÔÚ»ñµÃtokenÖ®ºóÎÒÃǾÍҪȥ»ñÈ¡Óû§µÄ»ù±¾ÐÅÏ¢ÁË¡£
Ò³Ãæ»áÏÈ´Ó cookie Öв鿴ÊÇ·ñ´æÓÐ token£¬Ã»ÓУ¬¾Í×ßÒ»±éÉÏÒ»²¿·ÖµÄÁ÷³ÌÖØÐµÇ¼£¬Èç¹ûÓÐtoken,¾Í»á°ÑÕâ¸ö token ·µ¸øºó¶ËÈ¥ÀÈ¡user_info£¬±£Ö¤Óû§ÐÅÏ¢ÊÇ×îеġ£µ±È»Èç¹ûÊÇ×öÁ˵¥µãµÇ¼µÃ¹¦Äܵϰ£¬Óû§ÐÅÏ¢´æ´¢ÔÚ±¾µØÒ²ÊÇ¿ÉÒԵġ£µ±Äãһ̨µçÄԵǼʱ£¬Áíһ̨»á±»ÌáÏÂÏߣ¬ËùÒÔ×Ü»áÖØÐµÇ¼»ñÈ¡×îеÄÄÚÈÝ¡£
ÏÈ˵һ˵ÎÒȨÏÞ¿ØÖƵÄÖ÷Ìå˼·£¬Ç°¶Ë»áÓÐÒ»·Ý·ÓÉ±í£¬Ëü±íʾÁËÿһ¸ö·ÓɿɷÃÎʵÄȨÏÞ¡£µ±Óû§µÇ¼֮ºó£¬Í¨¹ýtoken»ñÈ¡Óû§µÄrole£¬¶¯Ì¬¸ù¾ÝÓû§µÄroleËã³öÆä¶ÔÓ¦ÓÐȨÏ޵ķÓÉ£¬ÔÙͨ¹ý router.addroutes¶¯Ì¬¹ÒÔØÂ·ÓÉ¡£µ«ÕâЩ¿ØÖƶ¼Ö»ÊÇÒ³Ãæ¼¶µÄ£¬Ëµ°×ÁËǰ¶ËÔÙÔõô×öȨÏÞ¿ØÖƶ¼²»ÊǾø¶Ô°²È«µÄ£¬ºó¶ËµÄȨÏÞÑéÖ¤ÊÇÌÓ²»µôµÄ¡£
ͨ¹ýǰ¶ËÀ´¿ØÖÆÒ³Ãæ¼¶µÄȨÏÞ£¬²»Í¬È¨ÏÞµÄÓû§ÏÔʾ²»Í¬µÄ²à±ßÀ¸ºÍÏÞÖÆÆäËùÄܽøÈëµÄÒ³Ãæ(Ò²×öÁËÉÙÐí°´Å¥¼¶±ðµÄȨÏÞ¿ØÖÆ)£¬ºó¶ËÔò»áÑé֤ÿһ¸öÉæ¼°ÇëÇóµÄ²Ù×÷£¬ÑéÖ¤ÆäÊÇ·ñÓиòÙ×÷µÄȨÏÞ£¬Ã¿Ò»¸öºǫ́µÄÇëÇó²»¹ÜÊÇ get »¹ÊÇ post ¶¼»áÈÃǰ¶ËÔÚÇëÇóheaderÀïÃæÐ¯´øÓû§µÄtoken£¬ºó¶Ë»á¸ù¾Ý ¸ÃtokenÀ´ÑéÖ¤Óû§ÊÇ·ñÓÐȨÏÞÖ´ÐиòÙ×÷¡£ÈôûÓÐȨÏÞÔòÅ׳öÒ»¸ö¶ÔÓ¦µÄ״̬Â룬ǰ¶Ë¼ì²âµ½¸Ã״̬Â룬×ö³öÏà¶ÔÓ¦µÄ²Ù×÷¡£
ʹÓÃvuex¹ÜÀí·ÓÉ±í£¬¸ù¾ÝvuexÖпɷÃÎʵÄ·ÓÉäÖȾ²à±ßÀ¸×é¼þ¡£
¾ßÌåʵÏÖ£º
´´½¨vueʵÀýµÄʱºò½«vue-router¹ÒÔØ£¬µ«Õâ¸öʱºòvue-router¹ÒÔØÒ»Ð©µÇ¼»òÕß²»ÓÃȨÏ޵Ĺ«ÓõÄÒ³Ãæ¡£
µ±Óû§µÇ¼ºó£¬»ñÈ¡ÓÃrole£¬½«roleºÍ·Óɱíÿ¸öÒ³ÃæµÄÐèÒªµÄȨÏÞ×÷±È½Ï£¬Éú³É×îÖÕÓû§¿É·ÃÎʵÄ·ÓÉ±í¡£
µ÷ÓÃrouter.addRoutes(store.getters.addRouters)Ìí¼ÓÓû§¿É·ÃÎʵÄ·ÓÉ¡£
ʹÓÃvuex¹ÜÀí·ÓÉ±í£¬¸ù¾ÝvuexÖпɷÃÎʵÄ·ÓÉäÖȾ²à±ßÀ¸×é¼þ¡£
±±¾©Ð£Çø