2013-04-22 64 views
0

我正在爲我的網站整合yahoo open ID。我的網站正在運行不同的語言(en,jp,cn等)。當我嘗試從英文網站登錄雅虎opend ID然後它很好,但是當我嘗試從日本或中國網站相同,然後它不會重定向到雅虎開放ID登錄。用yahoo使用OpenID登錄多語種網站

每次我提示以下錯誤:從JavaScript

Error: The character encoding of the plain text document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the file needs to be declared in the transfer protocol or file needs to use a byte order mark as an encoding signature. Source File: http://uatstorefrontjpcr.mobi-book.com/ReturnFromSocial/LogOnYahoo Line: 0

任何人都可以提出來要做什麼。

我爲此使用了SocialAuth-net.dll。我已經在web.config中設置了所有必需的包裝器。 Google和facebook open ID的編碼相同。

+0

我找到了解決方案。所以現在就關閉 – Manoj 2013-06-24 13:32:57

回答

0

您的網絡服務器可能會發送回應Content-Typetext/plain。當Web瀏覽器接收到具有該內容類型的響應時,它不知道應該使用什麼編碼來解碼它;既然你沒有告訴它如何解碼,不同的瀏覽器可能會選擇不同的方式。

解決方案是提供一個明確的編碼。例如,如果您知道該文本是UTF-8編碼,那麼你可以提供它的頭,像這樣:

Content-Type: text/plain; charset=UTF-8 

an informational page來自W3C的,你可以得到ASP.Net包括該位在標題中使用Response.ContentEncoding。再次以UTF-8爲例,您可以這樣設置:

Response.ContentEncoding = Encoding.UTF8; 
+0

感謝您的時間,但我已經解決了這個問題並關閉了 – Manoj 2013-07-08 11:05:06