2014-10-20 53 views
1

我有一個多語言網站。可用的語言是英語和荷蘭語。我希望能夠在這些語言之間切換。因此,當訪問者點擊NL語言時,它將指向www.website.com/languagecontroller/switchlanguage/language=nl?currenturl=http%3a%2f%2fwww.website.com%2f(currenturl參數將被url編碼)。HttpContext.Response.RedirectLocation在鉻中工作

HttpContext.Response.Clear(); 
HttpContext.Response.StatusCode = 302; 
HttpContext.Response.RedirectLocation = currentUrl; 
HttpContext.Response.End(); 

結果(僅適用於Chrome)我得到在地址欄是空白頁:www.website.com/languagecontroller/switchlanguage/language=nl?currenturl=www.website.com

重定向到一個頁面,正確的語言將通過下面的代碼來完成

編碼看起來很好,因爲Internet Explorer和Firefox工作正常,只有Chrome有問題。我也嘗試過Server.Transfer(),但我遇到過同樣的問題。

我一直在尋找的問題,它看起來像它與Chrome緩存。但我不確定,也找不到解決方案。我沒有看到什麼可能是錯誤的,或者我可以如何解決這個問題,所以Chrome不會給我提供任何問題。

有沒有人有想法?

回答

1

請參閱http://en.wikipedia.org/wiki/HTTP_location

RFC 2616需要在HTTP位置頭絕對網址,該網址的格式不正確(從我見上文),加(HTTP://)並將其轉換爲受過良好形成了絕對的URL。檢查,也許這將解決問題。

該問題似乎在URL中。

希望這會有所幫助。

謝謝

+1

嗨Ironluca,我已經更新了URL的URL編碼網址。在我的代碼中,它已經是這樣了。現在這也是我的問題。謝謝 – Willem 2014-10-20 10:45:25