当前位置: 首页>>代码示例>>Java>>正文


Java HttpEngine.getResponseHeaders方法代码示例

本文整理汇总了Java中com.squareup.okhttp.internal.http.HttpEngine.getResponseHeaders方法的典型用法代码示例。如果您正苦于以下问题:Java HttpEngine.getResponseHeaders方法的具体用法?Java HttpEngine.getResponseHeaders怎么用?Java HttpEngine.getResponseHeaders使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.squareup.okhttp.internal.http.HttpEngine的用法示例。


在下文中一共展示了HttpEngine.getResponseHeaders方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: update

import com.squareup.okhttp.internal.http.HttpEngine; //导入方法依赖的package包/类
private void update(CacheResponse conditionalCacheHit, HttpURLConnection httpConnection)
    throws IOException {
  HttpEngine httpEngine = getHttpEngine(httpConnection);
  URI uri = httpEngine.getUri();
  ResponseHeaders response = httpEngine.getResponseHeaders();
  RawHeaders varyHeaders =
      httpEngine.getRequestHeaders().getHeaders().getAll(response.getVaryFields());
  Entry entry = new Entry(uri, varyHeaders, httpConnection);
  DiskLruCache.Snapshot snapshot = (conditionalCacheHit instanceof EntryCacheResponse)
      ? ((EntryCacheResponse) conditionalCacheHit).snapshot
      : ((EntrySecureCacheResponse) conditionalCacheHit).snapshot;
  DiskLruCache.Editor editor = null;
  try {
    editor = snapshot.edit(); // returns null if snapshot is not current
    if (editor != null) {
      entry.writeTo(editor);
      editor.commit();
    }
  } catch (IOException e) {
    abortQuietly(editor);
  }
}
 
开发者ID:aabognah,项目名称:LoRaWAN-Smart-Parking,代码行数:23,代码来源:HttpResponseCache.java

示例2: execute

import com.squareup.okhttp.internal.http.HttpEngine; //导入方法依赖的package包/类
private Response execute() throws IOException {
  Connection connection = null;
  Response redirectedBy = null;

  while (true) {
    HttpEngine engine = newEngine(connection);

    Request.Body body = request.body();
    if (body != null) {
      MediaType contentType = body.contentType();
      if (contentType == null) throw new IllegalStateException("contentType == null");
      if (engine.getRequestHeaders().getContentType() == null) {
        engine.getRequestHeaders().setContentType(contentType.toString());
      }
    }

    engine.sendRequest();

    if (body != null) {
      body.writeTo(engine.getRequestBody());
    }

    engine.readResponse();

    int responseCode = engine.getResponseCode();
    Dispatcher.RealResponseBody responseBody = new Dispatcher.RealResponseBody(
        engine.getResponseHeaders(), engine.getResponseBody());

    Response response = new Response.Builder(request, responseCode)
        .rawHeaders(engine.getResponseHeaders().getHeaders())
        .body(responseBody)
        .redirectedBy(redirectedBy)
        .build();

    Request redirect = processResponse(engine, response);

    if (redirect == null) {
      engine.automaticallyReleaseConnectionToPool();
      return response;
    }

    // TODO: fail if too many redirects
    // TODO: fail if not following redirects
    // TODO: release engine

    connection = sameConnection(request, redirect) ? engine.getConnection() : null;
    redirectedBy = response;
    request = redirect;
  }
}
 
开发者ID:aabognah,项目名称:LoRaWAN-Smart-Parking,代码行数:51,代码来源:Job.java

示例3: put

import com.squareup.okhttp.internal.http.HttpEngine; //导入方法依赖的package包/类
@Override public CacheRequest put(URI uri, URLConnection urlConnection) throws IOException {
  if (!(urlConnection instanceof HttpURLConnection)) {
    return null;
  }

  HttpURLConnection httpConnection = (HttpURLConnection) urlConnection;
  String requestMethod = httpConnection.getRequestMethod();

  if (maybeRemove(requestMethod, uri)) {
    return null;
  }
  if (!requestMethod.equals("GET")) {
    // Don't cache non-GET responses. We're technically allowed to cache
    // HEAD requests and some POST requests, but the complexity of doing
    // so is high and the benefit is low.
    return null;
  }

  HttpEngine httpEngine = getHttpEngine(httpConnection);
  if (httpEngine == null) {
    // Don't cache unless the HTTP implementation is ours.
    return null;
  }

  ResponseHeaders response = httpEngine.getResponseHeaders();
  if (response.hasVaryAll()) {
    return null;
  }

  RawHeaders varyHeaders =
      httpEngine.getRequestHeaders().getHeaders().getAll(response.getVaryFields());
  Entry entry = new Entry(uri, varyHeaders, httpConnection);
  DiskLruCache.Editor editor = null;
  try {
    editor = cache.edit(uriToKey(uri));
    if (editor == null) {
      return null;
    }
    entry.writeTo(editor);
    return new CacheRequestImpl(editor);
  } catch (IOException e) {
    abortQuietly(editor);
    return null;
  }
}
 
开发者ID:aabognah,项目名称:LoRaWAN-Smart-Parking,代码行数:46,代码来源:HttpResponseCache.java


注:本文中的com.squareup.okhttp.internal.http.HttpEngine.getResponseHeaders方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。