UTF-8編碼的漢字:少數是漢字每個占用3個位元組,多數占用4個位元組
# GET請求編碼
Chrome會先把URL中非ASCII字符按照某種編碼格式(谷歌瀏覽器是UTF-8)編碼成byte陣列后,然后轉成16進制陣列,然后在每個16進制數字前加上&分割
eg:
地址欄:http://localhost/eee.php?b=1zpeasy牛逼 回車

我們發現瀏覽器發送的請求是: http://localhost/eee.php?b=1zpeasy%E7%89%9B%E9%80%BC

也就是瀏覽器在發送請求前給編碼處理了,首先是把非ASCII字符牛逼->二進制位元組樓->16進制位元組流 E7899BE980BC->%E7%89%9B%E9%80%BC
編碼轉換網址:UTF-8編碼轉換器-ME2在線工具 (metools.info)

# GET接收解碼
互聯網上的所有資料都是位元組傳輸的,當服務器接受過來接受過來之后,首先會對url這一塊解碼,解碼出http://localhost/eee.php(這部分解碼是根據服務器組態檔設定的,列入tomcat <Connector URIEncoding="UTF-8">)
關于引數的解碼這里不再贅述,詳情可參考http請求(GET/POST)時,url/引數編碼的程序分析_個人文章 - SegmentFault 思否
# POST請求編碼
post提交引數時也是要編碼的,和GET方式類似

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/536240.html
標籤:Html/Css
上一篇:Vue3 企業級優雅實戰 - 組件庫框架 - 7 組件庫檔案的開發和構建
下一篇:AJAX---個人資訊案例
