最近公司做的一個專案,在電腦端開發一直都沒有問題,但是把專案放到微信公眾號里打開網頁登錄的時候就會出現每次請求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才能解決問題,轉換方式這里不展開討論
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/71621.html
標籤:Java
上一篇:01Invalid bound statement (not found)
下一篇:JPA N+1
