OGeek|极客世界-中国程序员成长平台

标题: php - apache header 中的欧元字符 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 17:08
标题: php - apache header 中的欧元字符

我们有基于 codeigniter 的 iphone 应用程序使用的 Web 服务,参数通过 header 传递。一切正常,直到参数值中有一个欧元(€)符号。每当从 iphone 发送的参数有欧元符号时,它就会被截断。 有什么想法我做错了或者我们应该怎么做?



Best Answer-推荐答案


根据 RFC(如果您有兴趣,请参阅 RFC 2616),您不能在 HTTP header 中发送非 ASCII 字符。据我所知,当您这样做时会发生未定义的情况 - 您的服务器似乎丢弃了标题的其余部分。

您需要在发送前对 header 的值进行 URL 编码(将特殊字符替换为 %XX 字符串,正如您经常在浏览器的地址栏中看到的那样)。

要在 iPhone 上正确执行此操作,请参阅 post .在 PHP 端,urldecode()将允许您检索原始标题。

关于php - apache header 中的欧元字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12894428/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4