使用RestTemplate发送post请求

简介: 使用RestTemplate发送post请求

用RestTemplate发送post请求,遇到了很多问题,如转换httpMessage失败、中文乱码等,调了好久才找到下面较为简便的方法:

1         RestTemplate restTemplate = new RestTemplate();
 2         HttpHeaders headers = new HttpHeaders();
 3         MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
 4         headers.setContentType(type);
 5         headers.add("Accept", MediaType.APPLICATION_JSON.toString());
 6         
 7         JSONObject jsonObj = JSONObject.fromObject(params);
 8         
 9         HttpEntity<String> formEntity = new HttpEntity<String>(jsonObj.toString(), headers);
10 
11         String result = restTemplate.postForObject(url, formEntity, String.class);复制代码

如果直接使用在postForObject中把对象传入很容易出现no suitable HttpMessageConverter found for request type的错误,建议直接先转成字符串,见jsonObj.otString(),网上有人说设置RestTemplate的HttpMessageConverter,试了一下要引入各种包。另外要注意中文编码问题,网上有人说StringHttpMessageConverter默认使用ISO-8859-1,要指定为UTF-8编码,自己尝试没有成功,最后通过指定contentType的方式解决了。



目录
相关文章
|
8月前
|
JSON 文字识别 测试技术
Qwen2.5-VL Cookbook来啦!手把手教你怎么用好视觉理解模型!
今天,Qwen团队发布了一系列展示 Qwen2.5-VL 用例的Notebook,包含本地模型和 API 的使用。
2640 22
|
机器学习/深度学习 JSON 算法
语义分割笔记(二):DeepLab V3对图像进行分割(自定义数据集从零到一进行训练、验证和测试)
本文介绍了DeepLab V3在语义分割中的应用,包括数据集准备、模型训练、测试和评估,提供了代码和资源链接。
2524 0
语义分割笔记(二):DeepLab V3对图像进行分割(自定义数据集从零到一进行训练、验证和测试)
|
设计模式 算法 边缘计算
“论软件的可靠性评价”必过范文,突击2024软考高项论文
容错设计,其核心理念是,在出现错误时能够有效地防止系统发生故障,特别是在那些错误可能导致严重后果的情况下。其次是检错设计,它帮助我们及时识别潜在的错误。最后是通过降低软件的
306 4
“论软件的可靠性评价”必过范文,突击2024软考高项论文
|
JSON 数据挖掘 API
天猫店铺商品数据接口集成指南与实战技巧
**天猫商品API概览** - **接口**: Tmall.item_search_shop, 获取店铺商品详情。 - **功能**: 开发者可获取商品标题、价格、销量等。 - **流程**: 注册天猫开放平台账户→获App Key/Secret→获取Access Token→构建URL调用API→解析JSON响应。 - **参数**: 包含店铺ID、页码、数量等。 - **返回**: JSON格式的商品列表。 - **应用**: 商品管理、电商应用开发、数据分析。此API助力商家高效管理、提升用户体验。
|
XML 数据格式
restTemplat发post请求报错Content type ‘application/xml;charset=UTF-8‘ not supported“
restTemplat发post请求报错Content type ‘application/xml;charset=UTF-8‘ not supported“
543 1
|
人工智能 架构师 程序员
[AI 程序员 Devyan] 终于找到人帮我写代码了
了解 Devyan,这款由人工智能驱动的编程助手,如何通过协调多种角色来简化和优化软件开发过程。
[AI 程序员 Devyan] 终于找到人帮我写代码了
|
调度 Python
Python任务调度神器:APScheduler使用详解
Python任务调度神器:APScheduler使用详解
2610 3
|
存储 安全 Java
settings.xml详解(很详细读这一篇就够了)
settings.xml是Java项目中用于配置Maven的重要文件,它详细规定了Maven的运行规则和行为。该文件通常位于用户家目录下的.m2文件夹中,或者项目根目录下的.mvn文件夹内。settings.xml中包含了众多配置项,从代理设置、镜像仓库配置,到服务器认证信息、插件组等,均可以在此文件中进行细致定义。通过合理配置settings.xml,我们可以优化Maven的依赖下载速度,保障仓库访问的安全性,甚至实现私有仓库的搭建与管理。深入了解settings.xml的每一项配置,对于提高Maven使用效率、保障项目构建稳定性具有重要意义。因此,无论是Maven初学者还是资深用户,都应仔
14542 4
【报错】unhandled error during execution of watcher callback
【报错】unhandled error during execution of watcher callback
329 0
|
Ubuntu Linux 网络安全
Miniconda安装使用教程
Miniconda安装使用教程
3417 0