大家好,又见面了,我是你们的朋友全栈君。
背景:做一个项目的接口对接,用Getman\postman等接口调试工具都是可以的。用程序运行就报415.
原因:根据接口所传参数的不同,post请求的Content-type有四种:
application/x-www-form-urlencoded(默认)
application/xml
application/json
multipart/form-data
我所对接的接口所传的参数是json格式的,代码中没有设置请求头header的Content-Type,默认是application/x-www-form-urlencoded。
URIBuilder uriBuilder = new URIBuilder(url);
//创建一个http post请求
HttpPost httpPost = new HttpPost(uriBuilder.build());
//设置请求头header
httpPost.setHeader("Content-Type","application/json");
//设置请求数据
httpPost.setEntity(new StringEntity(strJson,"utf-8"));
改动完成以后,接口请求成功。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133396.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...