【问题标题】:android - Volley response headersandroid - Volley 响应标头
【发布时间】:2017-06-30 13:48:13
【问题描述】:

我尝试使用 volley 进行 http 请求。我在邮递员上尝试了一个请求,响应标头如下:

  1. 内容编码 →gzip
  2. 内容长度 →153
  3. 内容类型→应用程序/json;字符集=utf-8
  4. 日期 →2017 年 6 月 30 日星期五 13:36:10 GMT
  5. ETag →W/"23-E742p6pP4kakmVh3lok1ww"
  6. 服务器→Microsoft-IIS/8.0
  7. 变化→X-HTTP-Method-Override、Accept-Encoding、Accept-Encoding
  8. X-Powered-By →Express, ASP.NET

Volley 添加了一些额外的键并删除了Content-LengthContent-Encoding 键。我在parseNetworkResponse 函数上写键和值。响应标头如下:

内容类型:应用程序/json;字符集=utf-8 日期:格林威治标准时间 2017 年 6 月 30 日星期五 09:05:23 ETag:W/“23-E742p6pP4kakmVh3lok1ww” 服务器:Microsoft-IIS/8.0 设置 Cookie:ARRAffinity=16d81073e15abb17d2faba962adb6504734210ff2b9ff1ddfa770750ac7752e2;Path=/;xxx.net 变化:X-HTTP-Method-Override、Accept-Encoding、Accept-Encoding X-Android-Received-Millis : 1498813523832 X-Android-响应源:网络 200 X-Android-Selected-Protocol:http/1.1 X-Android-Sent-Millis:1498813523632 X-Powered-By : Express

为什么会改变内容?如何获得Content-LengthContent-Encoding

【问题讨论】:

    标签: android http android-volley android-networking


    【解决方案1】:

    如果你使用 java.net.HttpURLConnection 和 getHeaderFieldKey 方法,那么不要忘记根据API reference检查头部的第0个元素:

    某些实现可能会将第 0 个标头字段视为特殊字段,即作为 HTTP 服务器返回的状态行。在这种情况下,getHeaderField(0) 返回状态行,但 getHeaderFieldKey(0) 返回 null。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-18
      • 1970-01-01
      • 2017-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多