httpclient面试题
httpclient
httpclient是apache下的支持http协议的客户端工具包,java类中可以发出http请求实现向其他系统请求数据
httpclient使用:
导入依赖,利用HttpGet和HttpPost构造请求,利用CloseableHttpclient对象执行请求,利用CloseableHttpResponse接收响应
利用httpclient编写一个公共的http服务类,系统需要调用其他系统中接口获得数据时就可以用到该服务类完成调用
httpclient的常用参数:
connectTimeout:连接超时时间
ConnectionRequestTimeout:请求超时时间
SocketTimeout:socket读写超时时间
RedirectsEnabled:是否运行重定向
常见结果码
响应码分五种类型,由它们的第一位数字表示:
1xx:信息,请求收到,继续处理
2xx:成功,行为被成功地接受、理解和采纳
3xx:重定向,为了完成请求,必须进一步执行的动作
4xx:客户端错误,请求包含语法错误或者请求无法实现
5xx:服务器错误,服务器不能实现一种明显无效的请求
|
状态码 |
说明 |
详情 |
|
100 |
继续 |
请求者应当继续提出请求。服务器已收到请求的一部分,正在等待其余部分 |
|
101 |
切换协议 |
请求者已要求服务器切换协议,服务器已确认并准备切换 |
|
200 |
成功 |
服务器已成功处理了请求 |
|
202 |
已接受 |
服务器已接受请求,但尚未处理 |
|
203 |
非授权信息 |
服务器已成功处理了请求,但返回的信息可能来自另一个源 |
|
204 |
无内容 |
服务器成功处理了请求,但没有返回任何内容 |
|
205 |
重置内容 |
服务器成功处理了请求,内容被重置 |
|
206 |
部分内容 |
服务器成功处理了部分请求 |
|
300 |
多种选择 |
针对请求,服务器可执行多种操作 |
|
301 |
永久移动 |
请求的网页永久移动到新的位置,即永久重定向 |
|
302 |
临时移动 |
请求的网页暂时跳转到其他页面,即暂时重定向 |
|
303 |
查看其他位置 |
如果原来的请求是POST,重定向目标文档应该通过GET提取 |
|
304 |
未修改 |
此次请求返回的网页未修改,继续使用上次的资源 |
|
305 |
使用代理 |
请求者应该使用代理访问该网页 |
|
307 |
临时重定向 |
请求的资源临时从其他位置响应 |
|
400 |
错误请求 |
服务器无法解析该请求 |
|
401 |
未授权 |
请求没有进行身份验证或者验证未通过 |
|
403 |
禁止访问 |
服务器拒绝此请求 |
|
404 |
未找到 |
服务器找不到请求的网页 |
|
405 |
方法禁用 |
服务器禁用了请求中指定的方法 |
|
406 |
不接受 |
无法使用请求的内容响应请求的网页 |
|
407 |
需要代理授权 |
请求者需要使用代理授权 |
|
408 |
请求超时 |
服务器请求超时 |
|
409 |
冲突 |
服务器在完成请求时发生冲突 |
|
410 |
已删除 |
请求的资源已永久删除 |
|
411 |
需要有效长度 |
服务器不接受不含有效内容长度标头字段的请求 |
|
412 |
未满足前提条件 |
服务器未满足请求者在请求中设置的其中一个前提条件 |
|
413 |
请求实体过大 |
请求实体过大,超出服务器的处理能力 |
|
414 |
请求URI过长 |
请求网址过长服务器无法处理 |
|
415 |
不支持类型 |
请求格式不被请求页面支持 |
|
416 |
请求范围不符 |
页面无法提供请求的范围 |
|
417 |
未满足期望值 |
服务器未满足期望值请求标头字段的要求 |
|
500 |
服务器内部错误 |
服务器遇到错误,无法完成请求 |
|
501 |
未实现 |
服务器不具备完成请求的功能 |
|
502 |
错误网关 |
服务器作为网关或者代理,从上游服务器收到无效响应 |
|
503 |
服务不可用 |
服务器目前无法使用 |
|
504 |
网关超时 |
服务器作为网关或者代理,但是没有及时从上游服务器收到请求 |
|
505 |
HTTP版本不支持 |
服务器不支持请求中所用的HTTP协议版本 |

浙公网安备 33010602011771号