Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HTTP响应代码为401时读取数据_Java - Fatal编程技术网

Java HTTP响应代码为401时读取数据

Java HTTP响应代码为401时读取数据,java,Java,我正在尝试使用本地Java从返回401的连接读取数据,但未能成功。下面是代码- public String doGet(URL url) { try { HttpURLConnection connection = (HttpURLConnection) url.openConnection(); InputStream stream = connection.getInputStream(); StringBuilder data

我正在尝试使用本地Java从返回
401
的连接读取数据,但未能成功。下面是代码-

public String doGet(URL url)
{
    try
    {
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        InputStream stream = connection.getInputStream();
        StringBuilder data = new StringBuilder();
        int readByte;
        while ( (readByte = stream.read()) != -1 )
        {
            data.append((char) readByte);

        }
        stream.close();
        return data.toString();
    }
    catch ( IOException e )
    {
        System.err.println(e.getMessage());
    }
    return null;
}
使用
soapui
工具时,我可以轻松地读取相同的URL。请参见下面的屏幕截图-


少了什么?请提供任何建议…

当您收到错误响应时,不会通过标准输入流接收内容。相反,您需要使用获取
InputSteam
来读取错误页面的内容。

读取错误流是使用
stream.read()
方法抛出
java.lang.NullPointerException
:(现在该怎么办?@RaviJoshi检查文档的链接。这意味着您从
getErrorStream
方法调用中获得
null
,这反过来意味着没有建立连接。您确定得到401吗?实际引发的异常是什么?我在
httpurlconnection之间放置了一个
sysout
n connection=(HttpURLConnection)url.openConnection();
InputStream=connection.getErrorStream();
get
401
@ravijosh我尝试在
openConnection()
之后但在调用
getInputStream()之前显式调用
connection.connection()
。这可能会引发
IOException
。在该异常的
catch
中,尝试获取错误流。不,它不会引发任何异常。
stream.read()
正在引发空指针。