我使用 unirest 作为 API 的调用方法。但是在我的代码中实现它并在服务器日志中查看后,它总是调用关闭过期连接。
这是我的代码:
public static JSONArray getJsonArray(String url, Map<String, Object> filter){
GetRequest request = null;
jArr= null;
try {
Unirest.setTimeouts(10000, 10000);
request = Unirest.get(url).header("accept", "application/json");
if (filter != null){
request.queryString(filter);
}
jArr = request.asJson().getBody().getArray();
} catch (Exception ex){
logger.debug(ex);
}finally{
//Unirest.shutdow();
}
return jArr;
}
服务器日志:
14:05:25,954 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing expired connections
14:05:25,954 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing connections idle longer than 30 SECONDS
14:05:26,529 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing expired connections
14:05:26,529 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing connections idle longer than 30 SECONDS
14:05:26,826 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing expired connections
14:05:26,826 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing connections idle longer than 30 SECONDS
14:05:26,835 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing expired connections
14:05:26,835 INFO [STDOUT] [PoolingHttpClientConnectionManager] : Closing connections idle longer than 30 SECONDS
我尝试在代码中使用unirest.shutdown()。日志变得正常,但之后我无法再次使用 Unirest 代码。我发现这是停止的。
是在调用Unirest.shutdow()或修复日志后启动它的方法吗?