2

目前我正在测试我们的 REST 实现。我有一个问题,如果发送 404 错误(例如“找不到用户”),我可以获得正确的 HTP-Header,但不能获得页面的正文/内容。

如果我在浏览器中调用页面,我可以看到生成的 JSON 内容。

    URLConnection connection = new URL(url).openConnection()
    connection.connect()

    if ( connection instanceof HttpURLConnection) {
        HttpURLConnection httpConnection = (HttpURLConnection) connection
        int code = httpConnection.getResponseCode()
        if (code >= 400) {
            assertTrue("Wrong Error Code", code == 404)
        }
    }

这是我当前的代码,效果很好。但是如何获得 HTTP 响应的正文?

4

2 回答 2

2

您可以从错误流中获取内容:

def url = 'http://www.google.com/notfound'

URLConnection connection = new URL(url).openConnection()
int code = connection.responseCode
if( code >= 400 ) {
  assert code == 404, "Wrong Error Code (expected 404)"
  println connection.errorStream.text
}
于 2013-02-21T09:48:41.423 回答
1

InputStream = conn.getInputStream(); 字符串 ur=conn.getURL().toString();

于 2013-02-21T09:08:54.627 回答