亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

檢測HTTP POST請求的字符編碼

檢測HTTP POST請求的字符編碼

溫溫醬 2019-11-29 09:32:46
我正在構建一個Web服務,并擁有一個接受POST來創建新資源的節點。該資源需要兩種內容類型之一-我將要定義的XML格式或表單編碼的變量。這個想法是使用的應用程序可以直接發布XML并從更好的驗證等中受益,但是還有一個HTML接口可以發布表單編碼的內容。顯然,XML格式具有字符集聲明,但是僅通過查看POST就看不到如何檢測表單的字符集。來自Firefox的表單的典型帖子如下所示:POST /path HTTP/1.1Host: www.myhostname.comUser-Agent: Mozilla/5.0 [...etc...]Accept: text/html,application/xhtml+xml, [...etc...]Accept-Language: en-gb,en;q=0.5Accept-Encoding: gzip,deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Keep-Alive: 300Connection: keep-aliveContent-Type: application/x-www-form-urlencodedContent-Length: 41field1=value1&field2=value2&field3=value3似乎沒有任何有用的字符集指示。據我所知,application / x-www-form-urlencoded類型是完全用HTML定義的,它只列出了%編碼規則,但沒有說明數據應包含的字符集。基本上,如果我不知道最初顯示的HTML字符集是什么,有什么方法可以告訴字符集?否則,我將不得不嘗試根據存在的字符來猜測字符集,而我所能告訴的總是有些昧。
查看完整描述

3 回答

?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

POST中使用的字符集將與托管表單的HTML中指定的字符集匹配。因此,如果您的表單是使用UTF-8編碼發送的,則該編碼是用于發布內容的編碼。在將值轉換為字符編碼的八位位組之后,將應用URL編碼。


查看完整回答
反對 回復 2019-11-29
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

嘗試在Content-Type上設置字符集:


httpCon.setRequestProperty( "Content-Type", "multipart/form-data; charset=UTF-8; boundary=" + boundary );


查看完整回答
反對 回復 2019-11-29
  • 3 回答
  • 0 關注
  • 842 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號