http 常用状态码
200 —— 客户端发送的请求已经被服务器接受并且被成功处理了
206 —— 客户端通过发送范围请求头Range抓取到了资源的部分数据
一般用来
- 解决大文件下载问题
- 解决CDN和原始HTTP服务器问题
- 使用工具例如lftp,wget,telnet测试断电续传
400 —— 客户端请求语法错误,服务器无法理解
401 —— 未登录
403 —— 没有权限访问
404 —— 不存在
409 —— 冲突 (服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息)
416 —— 读取文件时设置的 Range 有误
参考文章:https://www.cnblogs.com/chenpingzhao/p/5797506.html
416正是支持断点续传的标志。服务器得到一个Range之后,需要对它的取值进行检验,包括:
- 开始位置非负
- 结束位置需要大于开始位置
- 开始位置需要小于文件长度减一 (因为这里的位置索引是从0开始的)
- 若结束位置大于文件长度减一,则需要把它的值设置为文件长度减一
文件存在远程服务器上,如何知道文件大小?
至少要发起两次请求:第一次请求,不需要下载整个文件,只需要获得Response的Content-Length大小;第二次请求,将Content-Length值写进RANGE,实现下载。
出现 416 时解决办法也很简单,将第一次请求时的Range去掉。
500 —— 服务器内部错误
502 —— 网关错误
更多可查看此处:https://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html
猪猪侠要努力呀!