簡體   English   中英

在現有的Android 4.1和4.2瀏覽器上訪問我們的網絡應用

[英]Accessing our web app on the stock Android 4.1 and 4.2 browser

因此,我目前遇到這個問題,試圖在官方庫存的Android瀏覽器上為Jelly Bean打開我們的Web應用程序。 我不知道我能解決這個問題的程度,但是我會盡力而為。

對於運行ICS或更舊版本的設備,在任何瀏覽器(股票,firefox,chrome)上,我們都可以輸入Web應用程序的URL,進入登錄頁面,登錄並查看所有內容。

對於運行Jelly Bean(4.1和4.2)的設備,如果我們在常規瀏覽器中輸入url,則會得到以下信息:

在此處輸入圖片說明

但是,如果我們使用ChromeFirefox ,那就很好了。

奇怪的是,我們收到此錯誤,因為我已經在我們的網絡上進行了身份驗證,並且我僅嘗試訪問登錄屏幕,因此不需要其他身份驗證。

我們的Web應用程序從服務器獲取信息,這在服務器端似乎不是問題。

因此,罪魁禍首似乎是Jelly Bean中的股票瀏覽器,我嘗試查找從ICS到Jelly Bean的股票Web瀏覽器是否有任何變化,但我找不到任何東西。

是否有人提出這樣的問題,或者是否知道對Jelly Bean上的常規android瀏覽器進行了任何重大更改(可能與安全性有關?)?

編輯:此Web應用程序不在外部可用。 目前,我們僅在內部測試過您必須連接到我們內部網絡的位置。

EDIT2:剛剛使用Dolphin Browser進行了檢查,發生了同樣的事情...所以我現在真的迷失了,因為我什至不確定它與4.1+股票瀏覽器有關。 另外,讓我感到更加迷失的是,我剛剛在4.1.2上檢查了銀河SIII的常規瀏覽器,頁面加載正常...

EDIT3:好消息,我們的開發人員已經進行了進一步的調查,顯然這是問題所在:

默認瀏覽器在請求中添加了額外的標頭,使我們的服務器認為這是ajax請求,並由於該請求的其余部分實際上不是ajax請求而拒絕了它。此錯誤是由於Android 4.1+中的默認瀏覽器引起的已向所有請求“ X-Requested-With:com.android.browser”添加了新的標頭。

因此,我猜測Dolphin HD瀏覽器也可以做到這一點...正在做進一步的調查,因此我們將繼續研究並提出答案。

根據進行過一些研究的開發人員的說法:

默認的瀏覽器在請求中添加了額外的標頭,使我們的服務器認為這是ajax請求,並拒絕了它,因為請求的其余部分實際上不是ajax請求...

造成此錯誤的原因是,Android 4.1+中的默認瀏覽器已向所有請求“ X-Requested-With:com.android.browser”添加了新標頭。

目前,我們無法花更多的時間嘗試通過代碼來找到解決此問題的有效方法...因此,我們決定將其記錄為一個已知問題,並建議人們在擁有4.1+設備的情況下使用Chrome

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM