RestTemplate发送POST请求
程序员文章站
2022-06-24 22:26:50
...
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.http.*;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.stereotype.Component;
import org.springframework.web.client.RestTemplate;
import java.nio.charset.Charset;
import java.util.Collections;
public class RestTemplateUtil {
@Value("${url}")
private String url;
@Autowired
private RestTemplate restTemplate;
@Bean
public RestTemplate restTemplate(){
RestTemplate template = new RestTemplate();
// messageConverters是RestTemplate的一个final修饰的List类型的成员变量
// messageConverters的第二个元素存储的是StringHttpMessageConverter类型的消息转换器
// StringHttpMessageConverter的默认字符集是ISO-8859-1,在此处设置utf-8字符集避免产生乱码
template.getMessageConverters().set(1, new StringHttpMessageConverter(Charset.forName("UTF-8")));
return template;
}
public String sendMessage(String jsonParam,String endUrl){
// 自定义请求头
MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
HttpHeaders headers = new HttpHeaders();
headers.setContentType(type);
headers.setAcceptCharset(Collections.singletonList(Charset.forName("UTF-8")));
headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON_UTF8));
// 参数
HttpEntity<String> entity = new HttpEntity<String>(jsonParam, headers);
// POST方式请求
ResponseEntity<String> responseEntity = restTemplate.exchange(url+endUrl, HttpMethod.POST, entity, String.class);
if(responseEntity == null){
return null;
}
return responseEntity.getBody().toString();
}
}
上一篇: resttemplate发送post请求
下一篇: HttpClient使用说明
推荐阅读
-
php中利用curl进行post请求示例
-
八、快速上手处理微信请求:接收、解析、处理微信后台发送给你服务器的消息(一)
-
python3发送request请求及查看返回结果实例
-
php curl模拟post请求小实例
-
html - 对一个文件进行发送了下载请求,php能记录下这次请求么,可以通过什么来记录这个请求?
-
IE6通过get发送奇数个汉字请求会乱码的解决方法_PHP教程
-
PHP模拟发送POST请求之三、加强file_get_contents发送POST请求
-
post请求重定向到get请求问题
-
php自定义类fsocket模拟post或get请求的方法_PHP
-
java发送http get请求的两种方式