簡體   English   中英

PHP CURL在URL中傳遞UTF-8字符

[英]PHP CURL passing UTF-8 characters in the URL

當我發送包含UTF-8字符é和ú的URL(僅舉幾例)時,這些字符將使用PHP函數rawurlencode進行編碼。 一旦生成了URL,它就會傳遞給Java Web服務的CURL請求,該Java Web服務返回XML數據。

Chébé單詞的示例編碼以Ch%C3%A9b%C3%A9的形式發送到Web服務,據我所知,這是標准格式。 我還嘗試了htmlentities函數將字符串轉換為實體,然后使用rawurlencode對字符串進行編碼。

出於明顯的XML原因,與之匹配的查詢示例中的項目名稱采用實體形式。

我的問題是,發出請求時,Web服務似乎因500內部錯誤而失敗。 所有其他字符串都可以。 它僅受UTF-8字符影響。 當我以Chébé之類的實體形式在瀏覽器中傳遞URL時,服務將響應結果,但是當我以瀏覽器URL編碼形式傳遞URL時,服務也會失敗。 我在這里想念什么嗎?

Google以q = Ch%C3%A9b%C3%A9的相同方式對其進行編碼,因此...是正確的。 您在處理程序中正在做什么? 如果假設您也控制處理程序服務,其他所有操作均失敗,則Base64對其進行編碼...

暫無
暫無

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

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