session圖片驗證碼,頁面和請求是兩個地址。android手機好用,aphone 失效。

來源:互聯網
上載者:User

標籤:其他   資訊   android   oid   路徑   說明   建議   img   輸入驗證碼   

問題描述:之前在H5頁面用session做了一個驗證碼。安卓手機好使。但是到蘋果就不好使了(頁面訪問是一個網域名稱地址,ajax請求是用另外的一個ip地址)。

   詳細說明: 驗證碼請求後台圖片正常顯示,android、ios都可以。但是輸入驗證碼到後台進行與圖片的驗證碼數字校正 時,android 可以正常校對,ios會產生一個新的session,所以擷取不到資訊。用IOS  和外部QQ瀏覽器 都不好使;

              問:請求用的是網域名稱還是ip? 

     答:ajax 裡面是IP 

     注意:這時的兩個web請求不是同一個網域名稱。

       1、 驗證碼顯示如: 

        

         2、 後台代碼:

                       跨網域設定:

                                

                              

                               

                               

 

       最後是如何解決的呢?

         因為請求和應用本身不是同一個web應用,加上safari機制導致兩次ajax請求有兩個session  ,不是同一個session,所以驗證碼取不到      

         解決方案一(好使):有一種簡單的方式可以繞過去,在原頁面(網頁瀏覽器網域名稱路徑)的網域名稱上加個子網域名稱映射映射到(ajax請求的ip),然後 

    ajax請求使用這個映射的子網域名稱訪問。

              這裡要注意:原來可能不好使的手機需要清理下緩衝重新測試!

 

    不好使的方案:直接把現有的ip改成網域名稱

    其他不建議的方案:這裡的小條是請求的頁面網域名稱,欠條是ajax請求的ip地址路徑

                           

        頁面請求如下:

       

 

 

 

                                           

 

session圖片驗證碼,頁面和請求是兩個地址。android手機好用,aphone 失效。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.