首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >apache客户端http响应以处理状态代码http 100

apache客户端http响应以处理状态代码http 100
EN

Stack Overflow用户
提问于 2011-08-31 04:13:18
回答 1查看 2.5K关注 0票数 3

我使用apache httpdefault客户端并执行post函数,如下所示

代码语言:javascript
复制
HttpResponse imToken = httpClient.execute(httpPostIM);

得到的响应是

代码语言:javascript
复制
HTTP/1.1 100 Continue
Connection: keep-alive

然后是:

代码语言:javascript
复制
HTTP/1.1 200 OK
Date: Tue, 30 Aug 2011 19:11:35 GMT

我们如何从客户端处理这个问题??

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-31 04:17:30

下面是response 100 from w3的定义,下面是what the response looks like的一个很好的示例。引述如下:

客户端应继续其请求。此临时响应用于通知客户端已收到请求的初始部分,并且尚未被服务器拒绝。客户端应该继续发送请求的其余部分,或者,如果请求已经完成,则忽略此响应。服务器必须在请求完成后发送最终响应。有关此状态代码的使用和处理的详细讨论,请参见第8.2.3节。

因此,如果您的客户端已经发送了整个请求,那么它应该等待服务器发出200或其他“最终”响应。

根据Apache HttpClient代码,您无需执行任何操作,因为客户端会忽略所有1XX响应代码,并继续查找最终响应。这是来自HttpMethodBase类中的commons-httpclient-3.1

代码语言:javascript
复制
if ((status >= 100) && (status < 200)) {
    if (LOG.isInfoEnabled()) {
        LOG.info("Discarding unexpected response: " +
            this.statusLine.toString()); 
    }
    this.statusLine = null;
}

如果您没有看到此行为,那么您可能需要增加客户端超时时间。也许它等待的时间还不够长?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7249210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档