跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教一个单点登录回调地址问题
未分類
12 1 月 2021

请教一个单点登录回调地址问题

请教一个单点登录回调地址问题

資深大佬 : renvip 1

前后端分离,flask+react ,使用域名 xxx.com ,nginx 分发 /api 到后端
前端 url: xxx.com/
页面请求 url:xxx.com/api/data,如果 token 失效,后端返回 401
页面使用响应拦截器,如何状态码为 401,则重定向到 url: xxx.com/api/login
后端 l 路由 api/login 返回重定向 return redirect(url_for(‘cas.login’))

问题:按说应该单点登录成功后,应该回调到 url :xxx.com/ 先在重定向到了 xxx.com/api/data,页面出现一堆 json 数据,
在 api/login 视图函数内打印 request.referrer,确实是 xxx.com/,我该如何解决问题!

另:我是在 chrome 中首次打开域名登录和 ctrl+shift+delect 清除 cookies 后,即:不存在 token 时,页面重定向失败,
那么应该是我的登录验证有问题,我的登录验证中的逻辑为,如果不存在 token,就返回重定向 return flask.redirect(flask.url_for(‘cas.login’))

实在是 不知怎么搞了

大佬有話說 (4)

  • 主 資深大佬 : renvip

    简化一下问题:前端伪造 referrer 是行不通的,所以如何让请求后端的 url 返回 401 后响应拦截器重定向单点登录时的 referrer 地址为前端 url,而非后端 url ?
    思路:不用响应拦截器,直接在前端直接校验 token ?

  • 資深大佬 : xuanbg

    前端在跳转到 xxx.com/api/login 前,自己保存 xxx.com/api/data 这个 url 。

  • 資深大佬 : ryanlid

    跳转到登录页时,把登录前的 url,通过 url 参数传到登录页

    登录完成后,重定向到登录前页面。

  • 資深大佬 : wuwukai007

    前端没有路由守卫吗,前端在 cookie 或 localsession 中拿不到 token,就直接跳到登录页

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具