安卓企業微信瀏覽器session丟失

2021-10-01 04:53:37 字數 1882 閱讀 1493

後端跨域配置(在後端的登入過濾器新增),這樣就跨域進行跨域訪問了。

response.setheader("access-control-allow-headers", "x-requested-with, accept, content-type, ***x");

response.setheader("access-control-allow-methods", "get, head, post, put, delete, trace, options, patch");

response.setheader("access-control-allow-origin", "*");

然而因為是使用session進行登入儲存的,上面這樣配置只能進行跨域請求,而不能儲存session,每次請求後端介面獲取都是新的session,sessionid都不一樣。

要讓後端返回cookie,需要設定

response.setheader("access-control-allow-credentials", "true");
這樣配置的話access-control-allow-origin就不能配置為*,必須配置具體的網域名稱(wechatconstant.we_chat_url為前端伺服器網域名稱),所以後端完整的配置為

response.setheader("access-control-allow-headers", "x-requested-with, accept, content-type, ***x");

response.setheader("access-control-allow-methods", "get, head, post, put, delete, trace, options, patch");

response.setheader("access-control-allow-origin", wechatconstant.we_chat_url);

response.setheader("access-control-allow-credentials", "true");

前端傳送請求也要帶上cookie,在axios文件上有個withcredentials屬性,預設為false,意思是不攜帶cookie資訊,將他配置為true就可以了傳送cookie資訊了。

axios.defaults.withcredentials=true;
然而出現乙個莫名其妙的問題,就是本來這樣子配置後session是可以儲存的。但是後面又出現了session儲存不了的現象。發現的網域名稱的問題。。。

因為前後端都是我自己編寫的,所以我直接將前端主頁不進行登入攔截,然後在手機進行前端主頁時,去後端請求乙個方法將偽造乙個登入資訊儲存在session中,後面在請求其他方法,發現其他方法被登入過濾器攔截了,所以重定向能不能攜帶cookie沒有具體研究,但是這邊session丟失不是因為重定向造成的

在pc上直接訪問前端位址,繼續偽造登入資訊儲存在session,呼叫其他後端方法,發現可以獲取session資訊,檢視的http請求,請求中一直攜帶jsessionid,所以後端設定後是有返回cookie給前端的,axios也有攜帶cookie

最後還是在網上找到乙個大神的部落格才解決的,

具體是跨源傳送cookie(withcredentials:true),跨的二級的域,根域必須相同,而且cookie的域必須是根域

比如 a.a.cn可以通過這裡所說的跨源 在向b.a.cn傳送ajax請求時 帶上 .a.cn下的cookie。

不要以為 域在.a.cn下的cookie ,a.a.cn在向b.a.cn發請求時 會自動帶上。

也不要認為cookie的跨源能跨根域,是不可能的。

微信瀏覽器

編輯 1.登入 當和某個聯絡人聊天時,聊天面板會並列在聯絡人面板的右邊,浮在網頁之上。點選網頁區域,聊天面板會自動收起。點選聯絡人面板右上角的新建聊天按鈕,就可以選擇與單個人聊天,或多個人群聊 在與單個人聊天時 2 點選聊天面板右上角上的 號,可增加其他聯絡人新建群聊 在與多個人群聊時,點選聊天面板...

瀏覽器跳安卓應用

轉至 首先做成html的頁面,頁面內容格式如下 href scheme host path query 啟動應用程式a 這一句就可以了。各個專案含義如下所示 host 適當記述 path 傳值時必須的key 沒有也可以 query 獲取值的key和value 沒有也可以 作為測試好好寫了一下,如下 ...

微信瀏覽器分享

首先說 得配合後台去配置如下紅框的資料,黃框是可以分享到 引入資源 var obj new object ajax type post success function data noncestr obj noncestr signature obj signature wx.ready funct...