我正在使用 guava 库来包含我的方法的先决条件。您可以删除它们以支持空检查。
  /**
   * @return a string consisting of the HTTP headers, concatenating the keys and values delimited by
   * CFLR (empty line) capable of serialization to the database.
   */
  public static final String httpHeadersToString(final HttpResponse httpResponse) {
    Preconditions.checkNotNull(httpResponse);
    Preconditions.checkNotNull(httpResponse.getAllHeaders());
    final Header[] allHeaders = httpResponse.getAllHeaders();
    StringBuffer sb = new StringBuffer();
    int index = 0;
    while(index < allHeaders.length) {
      Header header = allHeaders[index];
      sb.append(header.getName())
         .append(System.getProperty("line.separator"))
         .append(header.getValue());
      if (++index < allHeaders.length) {
        sb.append(System.getProperty("line.separator"));
      }
    }
    return sb.toString();
  }
  /**
   * @return reconstruct HTTP headers from a string, delimited by CFLR (empty line).
   */
  public final HttpHeaders stringToHttpHeaders(final String headerContents) {
    HttpHeaders httpHeaders = new HttpHeaders();
    final String[] tempHeaderArray = headerContents.split(System.getProperty("line.separator"));
    int i = 0;
    while (i + 1 <= tempHeaderArray.length) {
      httpHeaders.add(tempHeaderArray[i++], tempHeaderArray[i++]);
    }
    return httpHeaders;
  }