Spring session、set-cookie失效、跨域、每次請求sessionid不一致,Cookie sameSite坑 跨域之坑


  最近公司做的一個項目,在電腦端開發一直都沒有問題,但是把項目放到微信公眾號里打開網頁登錄的時候就會出現每次請求sessionid不一致的問題。

原因有很多,先貼圖

 

 

 

 

 

 

 

session是后台生成的,由於驗證碼信息是放了在session里面,每次的session不一致,導致沒有辦法從session里面拿到響應的信息,導致這個問題是因為谷歌有一個sameSite

 

SameSite Cookie 應該是一種新的cookie屬性值,我看到很多大型網站如百度都沒有用到,
他是防止 CSRF 攻擊 具體可看 https://www.cnblogs.com/ziyunfei/p/5637945.html

 

 

 

 

 

解決辦參考:

https://blog.csdn.net/boom_man/article/details/84642040

 

@Bean
public CookieSerializer httpSessionIdResolver(){
        DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
        cookieSerializer.setCookieName("token");
        cookieSerializer.setUseHttpOnlyCookie(false);
        cookieSerializer.setSameSite(null);
        return cookieSerializer
}

  

加上這個之后,還要把HTTP換成HTTPS才能解決問題,轉換方式這里不展開討論


免責聲明!

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



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