移動端通過攜帶token訪問html頁面

項目中有一個頁面需要放到移動端,pc端是通過賬號密碼登錄獲取token,跳轉網頁前,在beforeEach中驗證是否已有token,但是在移動端就訪問這一個頁面,爲了避免登錄就需要直接用token去訪問,我是通過?把token拼接在網址後面

判斷移動端還是pc端,在beforeEach之前判斷,這樣pc端就不能通過token去訪問

window.location.href=window.location.href.split('?token=')[0]  //跳轉網頁

   因爲在beforeach中一旦判斷沒有token就會跳轉到登錄頁,這時候token是沒有存下來的,所以需要重新訪問,而且這樣寫是爲了避免陷入死循環,如果沒有token就不會再跳轉

function browserRedirect() {
	   var sUserAgent = navigator.userAgent.toLowerCase();
	   if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test(sUserAgent)) {
		   //移動端頁面
		  var phonetoken=window.location.href.split('?token=')[1]
		  if(phonetoken){
			 setToken(phonetoken)
			   store.state.token=phonetoken
			   window.location.href=window.location.href.split('?token=')[0]  //跳轉網頁
               //這樣寫是爲了避免陷入死循環,如果沒有token就不會再跳轉
		  }
		   
	   } else {
		   //pc端頁面
	   }
   }
browserRedirect(); 

這樣寫移動端是可以通過token去訪問項目中所有的頁面,如果要限制可訪問頁面,可以通過判斷window.location.href.split('?token=')[0] ,只有是我們允許訪問的網址纔可跳轉

發佈了220 篇原創文章 · 獲贊 8 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章