簡體   English   中英

我可以使IEMobile不從重定向的URL中刪除#嗎?

[英]Can I make IEMobile not strip the # from the URL of a redirect?

IEMobile訪問我的網站時遇到問題。 我使用的某個重定向具有302響應代碼和標頭(是的,這是應用程序引擎):

Server         Development/1.0 Python/2.5.2
Date           Tue, 04 Nov 2008 16:47:02 GMT
Content-Type   text/html; charset=utf-8
Cache-Control  no-cache
Location       http://localhost/games/edit-game.html?game=110&frame_to_edit=3#input-top
Content-Length 0

這對於大多數瀏覽器都適用。 輸入IEMobile(通過Windows Mobile 6.1)。 收到此回復后,IEMobile將前往

http://localhost/games/edit-game.html?game=110&frame_to_edit=3

注意缺少的#input-top 我能做什么?

您無能為力; 它似乎是瀏覽器中的錯誤(實施者顯然錯過了RFC 2616勘誤表)。

閱讀RFC2616它指定

位置:absoluteURI

RFC2396定義了絕對URI

跟蹤absoluteURI的定義,#字符不是URI定義的一部分,這在第4.1節中得到了確認。

4.1。 片段標識符

當URI引用用於對
標識的資源,可選的片段標識符,與
橫線(“#”)字符組成的URI,由附加的
成功完成檢索操作后,用戶代理將解釋的參考信息。 因此,它不是URI的一部分,但通常與URI結合使用。

簡而言之,#fragment 不是 URI的一部分,並且已被瀏覽器剝離,而不是Location:標頭的一部分。

戴夫說的沒錯,Google搜索出現了同樣的問題。

丑陋的解決方法:如果您要支持該瀏覽器,請使用元刷新標簽而不是重定向。

暫無
暫無

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

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