none
關於Chrome Cookie的value值 RRS feed

  • 問題

  • 先進好

    目前我的流程是:

    1. 使用者透過API打我的網頁

    2. 我會開啟一個分頁,並在這分頁內進行資料運算及驗證等,完成後將會開啟WinForm程式

    3. 關閉分頁,只留下WinForm程式

    步驟3 (關閉分頁) 於IE跟EDGE中都可以正常運作

    但於Chrome中,只會快速開啟分頁及快速關閉分頁,並不會開啟WinForm程式

    除非使用者點選Google跳出的是否記住使用者選項之後才可以正常運作(但要跳出這選項要直接打網址,不太可能要求每個使用者這樣做)。

    而查了一下Google跳出的是否記住使用者選項這部分應該是寫在Cookie內。

    因此我的想法幫使用者寫入Cookie內

    但問題來了.

    我於Chorme瀏覽器中看到的Cookie內容是編碼過後的,我原本打算直接把編碼過後的內容一起寫入,但看起來沒辦法..

    而我用SQLLite打開Cookies過濾後則是看不到value

    所以不知道該寫入什麼名稱和值才可以跟我於Chrome中點選記住使用者選項的內容一樣,

    另外,我是於Cookie中看到的,但Cookie名稱卻為:ASP.NET_SessionId

    我有點困惑是不是我搞錯甚麼了,往錯誤的方向找。

    希望前輩能給點方向,卡了有點久..謝謝前輩

    補充一下:Chrome會因為

    window.close(); 快速的關閉分頁
       string sScript = string.Format("openScan('{0}');window.opener = null;window.open('', '_parent');window.close();", url);
                            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Ecto_Viewer", sScript, true);




    • 已編輯 HumorA 2017年10月24日 上午 03:41 補充原因
    2017年10月24日 上午 02:39

所有回覆

  • 自問自答,

    快速開啟分頁及快速關閉分頁,並不會開啟WinForm程式的原因可能是因為太快關閉了,

    還沒處理完就被關閉,我讓他多等兩秒就可以了

    後端:

     string sScript = string.Format("openScan('{0}');", url);
                            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Ecto_Viewer", sScript, true);

    前端:

      function openScan(url) {
                var w1 = window, w2 = window.open(url);
                setTimeout(function () { w2.close(); w1.close(); }, 2000);
                return false;
            };

    2017年10月25日 上午 08:49