用Java访问第三方接口时报400,打断点查看时在getInputStream()方法执行时抛出了异常
解决:判断响应码getResponseCode()不是200,201,202的话,使用getErrorStream()而不是直接getInputStream()
* 获取url网址返回的数据内容
* @param urlStr
* @return
public
static
String
loadURL
(
String urlStr
)
{
try
{
URL url
=
new
URL
(
urlStr
)
;
HttpURLConnection urlConnection
=
(
HttpURLConnection
)
url
.
openConnection
(
)
;
urlConnection
.
setRequestMethod
(
"POST"
)
;
urlConnection
.
connect
(
)
;
InputStream inputStream
;
if
(
urlConnection
.
getResponseCode
(
)
!=
HttpURLConnection
.
HTTP_OK
||
urlConnection
.
getResponseCode
(
)
!=
HttpURLConnection
.
HTTP_CREATED
||
urlConnection
.
getResponseCode
(
)
!=
HttpURLConnection
.
HTTP_ACCEPTED
)
{
inputStream
=
urlConnection
.
getErrorStream
(
)
;
else
{
inputStream
=
urlConnection
.
getInputStream
(
)
;
BufferedReader br
=
new
BufferedReader
(
new
InputStreamReader
(
inputStream
,
"UTF-8"
)
)
;
StringBuffer sbf
=
new
StringBuffer
(
)
;
String temp
=
null
;
while
(
(
temp
=
br
.
readLine
(
)
)
!=
null
)
{
sbf
.
append
(
temp
)
;
sbf
.
append
(
"\r\n"
)
;
String result
=
sbf
.
toString
(
)
;
return
result
;
}
catch
(
IOException e
)
{
e
.
printStackTrace
(
)
;
return
null
;
用Java访问第三方接口时报400,打断点查看时在getInputStream()方法执行时抛出了异常解决:判断响应码getResponseCode()不是200,201,202的话,使用getErrorStream()而不是直接getInputStream()/** * 获取url网址返回的数据内容 * @param urlStr * @return */ public s...
导语:个人对网络连接接触的不多,在使用时自己发现一些问题,记录一下。 正文:我在使用
HttpURLConnection
.getResponseCode()的时候直接
报
错是IOException错误,responseCode = -1。一直想不明白,同一个程序我调用了两次,结果有一个链接一直OK,另一个却一直
报
这个错误。后来发现两个链接的区别,有一个返回的内容是空的,所以导致了这个错误。
解决
方法: 方法1、网页返回内容不能是空; 方法2、不要用这个接口咯。
您可能感兴趣的文章:Android使用URLConnection提交请求的实现Androi
其实问题很简单,就是很正常的
HttpURLConnection
POST连接,当getResponseCode为
HttpURLConnection
.HTTP_OK(200)和
HttpURLConnection
.HTTP_CREATED(201)时没有任何问题。
import
java
.io.BufferedReader;
import
java
.io.
InputStream
;
import
java
.io.
InputStream
Reader;
import
java
.io.PrintWriter;
import
java
.net.
HttpURLConnection
;
import
java
.net.URL;
public class ToInter...
在项目中遇到了一个
HttpURLConnection
网络请求
报
异常
的问题
java
.io.FileNotFoundException
后来通过log 定位到具体得问题出现在 urlConnection.get
InputStream
()上
分析原因为:
HttpURLConnection
POST请求时候,当getResponseCode为
HttpURLConnection
.HTTP_OK...
java
httpUrlConnection
调用远程接口
报
400
1.问题的出现:
线下开发时候使用httpUrlConnction测试调用远程接口一点问题都没有,但是打包后放到线上去后出现
400
的错误同样的参数在线下可以调试,放在线上就不行了。
一般
报
400
说明接口接收到了错误的参数,由于是远程调用别人的服务器接口看不到那边的日志,我们这边只有一个
400
,信息提示说对面jso...
HttpURLConnection
中connection.get
InputStream
()
报
异常
FileNotFoundException,各位帮忙看看
代码如下:
String httpUrl = "http://192.168.1.102:8080/http/";
//获得的数据
String resultData = "";
URL url = null;
项目中使用Feign组件远程调用问题记录,本地代码执行正常,部署到服务器访问调用不了远程接口,
报
feign.FeignException: status
400
reading,不太清楚是什么问题,分别用了httpclinet、resttemplate、feign,结果都失败
报
同一个问题,明明本地运行正常,线上就不正常了呢?
原因分析:
网上查了很多
报
错的原因,但是都不符合,最后用了
HttpURLConnection
这个api 成功
解决
解决
方案:
//post请求
public
后台使用http请求获取其他服务的数据,使用GET请求在url后面拼接参数发送请求。在本地编写对端的测试接口进行测试。每次代码走到
HttpURLConnection
对象的get
InputStream
()方法时都会阻塞,在测试接口内打的断点也没有走到,然后尝试通过浏览器直接输入url请求接口成功进入断点。。。
后来反复测试无意中将接收请求的接口内断点都去掉,http请求竟然执行成功。。。有没有大神...
HttpURLConnection
是
Java
中用于发送HTTP请求的类,可以用来调用WebService。具体步骤如下:
1. 创建一个URL对象,传入WebService的地址。
2. 打开URL连接,使用openConnection方法打开连接,并将其转换为
HttpURLConnection
对象。
3. 设置请求的方法,使用setRequestMethod方法设置为POST或GET等,根据WebService的要求进行设置。
4. 设置请求的内容格式,使用setRequestProperty方法设置Content-Type,通常为"application/soap+xml"。
5. 设置请求的其他属性,如超时时间,使用setConnectTimeout和setReadTimeout方法设置连接和读取的超时时间。
6. 获取输出流,使用getOutputStream方法获取输出流,将请求的内容写入输出流中,这里需要将WebService的请求内容转换为字节数组。
7. 发送请求,使用outputStream的write方法发送请求。
8. 获取输入流,使用get
InputStream
方法获取输入流,获取到的输入流就是WebService返回的响应。
9. 读取响应,可以通过一系列IO操作,将输入流中的数据读取出来,转换为需要的格式进行处理。
以上就是通过
HttpURLConnection
调用WebService的基本步骤。在实际应用中,可能需要根据具体的WebService接口进行一些特定的操作,如添加请求头、传递参数等。另外还需要处理
异常
情况,如连接超时、读取超时等,以保证调用WebService的稳定性和可靠性。
springboot整合mybatis报错:Failed to configure a DataSource: 'url' attribute is not specified and no em..
springboot整合mybatis报错:Failed to configure a DataSource: 'url' attribute is not specified and no em..
沉淀155:
Swiper5 使用方法及动态加载数据的问题
孤独与酒伴我同行
Swiper5 使用方法及动态加载数据的问题
000729
Swiper5 使用方法及动态加载数据的问题
孤独与酒伴我同行:
Swiper5 使用方法及动态加载数据的问题
000729: