解决httpClient中的乱码问题
作者:段娜688 | 来源:互联网 | 2023-05-18 21:05
把请求参数设置到builder里有多种方式:1、易存在乱码问题Set<String>keySetparams.keySet();for(Stringkey:keySet)
把请求参数设置到builder里有多种方式:1、易存在乱码问题
Set keySet = params.keySet();
for(String key : keySet) {
String value = params.get(key);
builder.addTextBody(key, value);//filename1为请求后台的普通参数;属性
}
2、
设置contenttype的编码方式
ContentType cOntentType= ContentType.create(HTTP.PLAIN_TEXT_TYPE, HTTP.UTF_8);
Set keySet = params.keySet();
for(String key : keySet) {
String value = params.get(key);
StringBody stringBody = new StringBody(value,contentType);
builder.addPart(key, stringBody);
}
或者
Set keySet = params.keySet();
for(String key : keySet) {
String value = params.get(key);
StringBody stringBody = new StringBody(value,ContentType.create(HTTP.PLAIN_TEXT_TYPE, HTTP.UTF_8));
builder.addPart(key, stringBody);
}
3、
Set keySet = params.keySet();
for(String key : keySet) {
builder.addTextBody(key.getKey(), key.getValue(),ContentType.create(HTTP.PLAIN_TEXT_TYPE, Consts.UTF_8))
}
解决乱码实质
public MultipartEntityBuilder addTextBody(String name, String text, ContentType contentType)
{
return addPart(name, new StringBody(text, contentType));
}
public MultipartEntityBuilder addTextBody(String name, String text)
{
return addTextBody(name, text, ContentType.DEFAULT_TEXT);//DEFAULT_TEXT = create("text/plain", Consts.ISO_8859_1);
}
推荐阅读
-
本文详细介绍了GetModuleFileName函数的用法,该函数可以用于获取当前模块所在的路径,方便进行文件操作和读取配置信息。文章通过示例代码和详细的解释,帮助读者理解和使用该函数。同时,还提供了相关的API函数声明和说明。 ...
[详细]
蜡笔小新 2023-12-14 19:29:57
-
最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ...
[详细]
蜡笔小新 2023-12-14 14:25:50
-
-
关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ...
[详细]
蜡笔小新 2023-12-13 15:47:22
-
个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ...
[详细]
蜡笔小新 2023-12-13 14:20:23
-
本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ...
[详细]
蜡笔小新 2023-12-13 14:17:11
-
本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ...
[详细]
蜡笔小新 2023-12-12 18:14:32
-
本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ...
[详细]
蜡笔小新 2023-12-12 13:54:31
-
本文介绍了Java自带的观察者模式,包括Observer和Observable对象的定义和使用方法。通过添加观察者和设置内部标志位,当被观察者中的事件发生变化时,通知观察者对象并执行相应的操作。实现观察者模式非常简单,只需继承Observable类和实现Observer接口即可。详情请参考Java官方api文档。 ...
[详细]
蜡笔小新 2023-12-12 13:52:38
-
本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ...
[详细]
蜡笔小新 2023-12-12 13:19:04
-
本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ...
[详细]
蜡笔小新 2023-12-11 17:54:55
-
本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ...
[详细]
蜡笔小新 2023-12-11 17:02:09
-
蜡笔小新 2023-12-11 13:17:11
-
本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ...
[详细]
蜡笔小新 2023-12-12 13:32:08
-
本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ...
[详细]
蜡笔小新 2023-12-12 10:10:14
-
本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ...
[详细]
蜡笔小新 2023-12-11 16:14:11
-