通過配置http攔截器,來進行ajax請求驗證用戶登錄的頁面跳轉


在.NET中驗證用戶是否登錄或者是否過期,若需要登錄時則將請求轉向至登錄頁面。

這個流程在進行頁面請求時是沒問題的,能正確進行頁面跳轉。

然而在使用xmlhttprequest時,或者jq的getJson那種jsonp的方式來請求資源,服務器將會把這種跳轉解釋為 ‘資源已重新定位’ ,返回碼為302。

但是瀏覽器將結果返回給ajax時並不會解析成302 found,而是會先進行一次資源跳轉,將跳轉后的新資源返回給ajax作為結果。

此時就需要手動去判斷出ajax請求,手動返回302以便ajax捕獲狀態。

同時在前端,需要為angular配置一個http攔截器,攔截所有的responseError,若錯誤碼為302,則根據錯誤信息進行頁面跳轉。

在后台進行頁面跳轉時:

 

為angular配置http攔截器

 

在配置中添加攔截器


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM