首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >发送带有特殊字符的http post/put - Problems时的Android默认字符集

发送带有特殊字符的http post/put - Problems时的Android默认字符集
EN

Stack Overflow用户
提问于 2011-06-03 21:31:43
回答 3查看 31.5K关注 0票数 18

我对apache httpClient进行了如下配置:

代码语言:javascript
复制
HttpProtocolParams.setContentCharset(httpParameters, "UTF-8");
HttpProtocolParams.setHttpElementCharset(httpParameters, "UTF-8");

我还为所有http post和put请求包含了http头文件"Content-Type: application/json;charset=UTF-8“。

我正在尝试使用包含特殊字符的json正文发送http post/put请求。通过Google拼音键盘、符号等输入中文字符)这些字符在日志中显示为胡言乱语,但我认为这是因为DDMS不支持UTF-8,如this问题所述。

问题是当服务器收到请求时,它有时根本看不到字符(特别是中文字符),或者当我们通过GET请求检索它时,它变成了毫无意义的垃圾。

我还尝试在单个字段中放置250个非ascii字符,因为该特定字段最多可以包含250个字符。但是,它无法在服务器端进行验证,因为服务器端声称已超过250个字符的限制。250个ASCII字符可以很好地工作。

服务端的家伙们声称他们支持UTF-8。他们甚至尝试模拟一个包含中文字符的post请求,服务器可以很好地接收数据。然而,这个人(一个中国人)使用的是一台安装了中文语言包的Windows计算机(我想,因为他可以在键盘上输入中文字符)。

我猜Android客户端和服务器(由中国人制造)使用的字符集是不一致的。但我不知道哪一个是错误的,因为服务器的家伙们声称他们支持UTF-8,而我们的rest客户端被配置为支持UTF-8。

这让我想知道Android在所有文本输入中默认使用什么字符集,是否可以通过编程将其更改为不同的字符集。我试图找到关于如何在输入小部件上做到这一点的资源,但我没有找到任何有用的东西。

有没有办法为Android中的所有输入小部件设置字符集?或者也许我在rest客户端配置中遗漏了一些东西?或者,仅仅是可能,服务器的家伙没有在他们的服务器上使用UTF-8,而是使用Windows字符集?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6227747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档