您的位置:首页 > 移动开发 > Android开发

Android学习之GET,POST与后台交互乱码问题

2016-04-14 18:13 453 查看
今天遇见Android与后台交互出现乱码的问题,觉得有必要总结一下,作为参考,遂著文以记之。

交互?通俗点就是GET,POST,当然远远不止这些,我也记不住就不提了,常用的就是这俩。

二者的区别:

Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求,在FORM(表单)中,Method默认为”GET”,实质上,GET和POST只是发送机制不同,并不是一个取一个发!

1.安全性:GET请求,参数会以&连接在URL尾部,可见,PSOT请求,会将参数放在body中,不可见。

解决:理论上我们可以对参数进行加密,这样就算参数可见也不会泄露问题,如果是黑客,你咋样都不安全,所以对于安全,看个人理解了。

2.长度限制:GET请求理论上提交的数据最多只能是1024字节,POST没有这种限制,可以传大量数据。

解决:GET请求通过URL传递参数,URL越长,则提交数据越多,二者成正比,

但是Http协议并没有对URL长度做出限制,这个显示是浏览器对URL做的限制。同理,POST也是如此,而之所以会有上传数据限制,是由服务器处理程序的能力决定的。

乱码解决办法:

1.双方约定同样的编码方式(一般都是UTF-8),Android studio使用者只需要修改这几个地方





就这么几个地方就行了

2.就需要检查交互方法,后台post提交则需要UTF-8编码,get提交这需要iso 8859-1编码

所以如果后台要用utf-8编码的话,那么你就要post你的接口。

3.如果还不行,就要后台检查是否添加这一句:

request.setCharacterEncoding(“utf-8”)

默认是ISO-8859-1;该方法必须在response.getWriter()之前进行设置

总结完毕!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: