搜尋

首頁  >  問答  >  主體

javascript - A为登录页面;B为个人页面。 从A页面登录后跳到B页面,如何不再返回登录页面。

浏览器上后退 window.history.go(-1) 总是返回上一页

天蓬老师天蓬老师2785 天前677

全部回覆(9)我來回復

  • 黄舟

    黄舟2017-04-11 09:49:56

    每次的请求都要用session进行身份验证。

    回覆
    0
  • 巴扎黑

    巴扎黑2017-04-11 09:49:56

    window.location.replace

    回覆
    0
  • 高洛峰

    高洛峰2017-04-11 09:49:56

    可以禁止A页面的缓存,每次都重新读取,并且可以通过在A页面对应的后台逻辑判断一下是否已经成功登陆,例如简单的就是判断一下session中是否有登录信息。
    具体的解决方法,可以查一下 ‘网页禁用浏览器返回功能’
    当然,也可以从JS这边入手,通过JS来限制,但是各种浏览器可能很头疼。
    登录这种功能最好做成ajax,可以防止表单重复提交,另外表单提交时可附带隐藏的token。

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-11 09:49:56

    解决这个问题的方法是:登陆页面设置为浏览器不缓存。就是写http头,指定浏览器是否缓存该页面private, no-store, max-age=0, no-cache, must-revalidate, post-check=0, pre-check=0,当然登陆页面还要判断登陆状态,已登录状态下就back

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-11 09:49:56

    禁止浏览器缓存

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-11 09:49:56

    请使用重定向跳到新页面,不要用history.go(-1)回退。

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-11 09:49:56

    楼上说的对,定向跳转,如果登录了,始终定向到B页面,只用没有登录才能看到A页面

    回覆
    0
  • 黄舟

    黄舟2017-04-11 09:49:56

    使用重定向redirect

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-11 09:49:56

    登录页面写个登录检测,已登录的就302到b页面

    回覆
    0
  • 取消回覆