HttpAndroidDataSource.java 文件源码

java
阅读 33 收藏 0 点赞 0 评论 0

项目:android_xcore 作者:
public InputStream getInputSteam(HttpUriRequest request) throws IllegalStateException, IOException {
    request.setHeader(ACCEPT_KEY, ACCEPT_DEFAULT_VALUE);
    request.setHeader(USER_AGENT_KEY, sUserAgent);
    AndroidHttpClient.modifyRequestToAcceptGzipResponse(request);
    Log.xd(this, request);
       HttpClient client = mInputStreamHelper.getClient();
       HttpResponse response = client.execute(request);
    int statusCode = response.getStatusLine().getStatusCode();
       boolean isRedirect = isRedirect(statusCode);
       if (isRedirect) {
        Header firstHeader = response.getFirstHeader("Location");
        if (firstHeader != null) {
               String value = firstHeader.getValue();
               if (!StringUtil.isEmpty(value) && !value.equals(request.getURI().toString())) {
                   return createRedirectRequest(request, response, value);
               }
        }
    }
    if (mResponseStatusHandler != null) {
        mResponseStatusHandler.statusHandle(this, request, response);
    }
    HttpEntity httpEntity = response.getEntity();
       InputStream ungzippedContent = AndroidHttpClient.getUngzippedContent(httpEntity);
       return mInputStreamHelper.getInputStream(ungzippedContent, client);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号