通常我們使用UTF-8編碼標準來發送每種語言的請求。 但是在某些語言中,這種編碼標準工作不正常,那麼在這種情況下,我們使用ISO-8859-1的 。什麼是Ajax中的編碼?
0
A
回答
1
這是一個相當模糊的問題。
如果你的意思是問,「AJAX中的編碼是什麼?」那麼答案就是AJAX不是一種編碼,它是客戶端 - 服務器通信的一種方法。
如果您打算問「AJAX使用什麼編碼?」那麼答案就是AJAX響應可以使用任何你想要的編碼,但是它通常應該匹配發出請求的HTML頁面的編碼。
3
您可以使用任何你想要的編碼。但是從你的問題來看,這聽起來像你通常使用UTF-8,但是有時候你會從某個地方獲取數據,這些數據會以不同的編碼進入(例如,Internet Explorer傾向於使用ISO- 8859-1)。
如果您要提供UTF-8編碼的文本,並且您從某處獲得非UTF-8編碼的文本,則必須先將其轉換爲UTF-8,然後再將其發送到該行。一個很好的做法是自動清理從Web瀏覽器接收到的所有數據,並將其重新編碼爲UTF-8。不幸的是,瀏覽器並不總是告訴你它使用什麼編碼;如果沒有提供,你可能會認爲它是UTF-8或ISO-8859-1。
如果您使用的是服務器端語言,那麼您將需要了解如何使用該語言轉換編碼。例如,PHP有iconv()
函數調用,以及一個非常好的函數mb_detect_encoding($text)
,當你不知道時,它會做一個相當不錯的工作來猜測給定數據位的編碼是什麼。
像這樣的事情會是爲了(假設PHP服務器端):你做任何事情與它之前
$text = iconv(mb_detect_encoding($text), 'UTF-8', $text);
做到這一點所有的用戶輸入(例如,使用array_map自動轉換用戶輸入):
function convert_to_utf8($text) {
return iconv(mb_detect_encoding($text), 'UTF-8', $text);
}
$_GET = array_map('convert_to_utf8', $_GET);
$_POST = array_map('convert_to_utf8', $_POST);
最好的辦法是確定瀏覽器是否提供編碼,並將其用作iconv()的第一個參數而不是mb_detect_encoding。
相關問題
- 1. 什麼是AJAX代碼中的錯誤
- 2. 彙編代碼中的.arm是什麼?
- 3. 編譯後代碼中的'()'是什麼?
- 4. 什麼是真空中的編碼?
- 5. AJAX - HTTP標頭值的默認字符編碼是什麼?
- 6. 這是什麼編碼?
- 7. 這是什麼編碼?
- 8. 什麼是base32編碼?
- 9. 這是什麼編碼?
- 10. 什麼是字符編碼?
- 11. initWithContentsOfURL什麼是編碼?
- 12. 什麼是地理編碼?
- 13. 它是什麼編碼?
- 14. 這是什麼編碼?
- 15. 在Ruby中 - 什麼是編碼?
- 16. 什麼是URL解碼和URL編碼
- 17. 什麼是Ajax狀態碼8?
- 18. 彙編代碼是什麼:mov edx,2,3,4是做什麼的?
- 19. 這是什麼類型的URL編碼?
- 20. DOMDocument的默認編碼是什麼?
- 21. 什麼是Open XML文件的編碼
- 22. 這是什麼樣的編碼?
- 23. 什麼是Google主頁的編碼?
- 24. 什麼是bnez MIPS指令的編碼?
- 25. 什麼是UILabel的initWithCoder編碼密鑰?
- 26. 這是什麼類型的編碼
- 27. 什麼是編碼NASM的好IDE?
- 28. 什麼是較好的編碼習慣?
- 29. 這種編碼的類型是什麼?
- 30. 這是什麼類型的編碼?
如果你是正確的關於該AJAX可以響應使用任何你想要的編碼,你能提供一個解決這個問題的相關問題http://stackoverflow.com/questions/8238548/how-to-do-the-使用下面的工作 - 情景,PHP和阿賈克斯 – TopDeveloper 2011-12-05 12:54:58