簡體   English   中英

使用OpenID for Multilingual網站登錄yahoo

[英]Login with yahoo using OpenID for Multilingual site

我正在為我的網站集成yahoo開放ID。 我的網站正在以不同的語言運行(en,jp,cn等)。 當我嘗試使用yahoo從開放的ID的英文網站登錄時,它的狀態很好,但是當我嘗試從日語或中文站點進行的登錄時,它並沒有將我重定向到yahoo的開放ID登錄名。

每次我從javascript中收到以下錯誤

錯誤:未聲明純文本文檔的字符編碼。 如果文檔包含來自US-ASCII范圍之外的字符,則在某些瀏覽器配置中,文檔將呈現亂碼。 需要在傳輸協議中聲明文件的字符編碼,或者文件需要使用字節順序標記作為編碼簽名。 源文件: http : //uatstorefrontjpcr.mobi-book.com/ReturnFromSocial/LogOnYahoo行:0

任何人都可以建議該怎么做。

我已經為此目的使用了SocialAuth-net.dll。 我已經在web.config中設置了所有必需的包裝器。 使用Google和Facebook開放ID可以進行相同的編碼。

您的Web服務器可能正在發回Content-Typetext/plain的響應。 當網絡瀏覽器收到具有該內容類型的響應時,它不知道應該使用哪種編碼來對其進行解碼。 由於您沒有告訴它如何解碼,因此不同的瀏覽器可能會選擇不同的方式。

解決方案是提供顯式編碼。 例如,如果您知道文本是UTF-8編碼的,則可以在標頭中提供它,如下所示:

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

根據W3C 的參考頁 ,您可以使用Response.ContentEncoding獲得ASP.Net將該位包含在標頭中。 再次以UTF-8為例,可以這樣設置:

Response.ContentEncoding = Encoding.UTF8;

暫無
暫無

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

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