ruby – 如何使用Net :: HTTP只读取身体的x个字节数?

前端之家收集整理的这篇文章主要介绍了ruby – 如何使用Net :: HTTP只读取身体的x个字节数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
看起来像 Ruby的Net :: HTTP的方法是全部的或没有什么,当谈到阅读网页的正文.如何读,说,只是身体的前100个字节?

如果请求的文件不可用,我正在尝试从内容服务器读取返回响应正文中的短错误消息.我需要读取足够的身体来确定文件是否存在.文件是巨大的,所以我不想让整个身体只是为了检查文件是否可用.

解决方法

您不应该使用HTTP HEAD请求(Ruby Net :: HTTP :: Head方法)来查看资源是否存在,只有在获得2xx或3xx响应时才会继续进行这假设您的服务器配置为返回4xx错误代码(如果文档不可用).我会认为这是正确的解决方案.

另一种方法是请求HTTP头并查看结果中的内容长度头值:如果您的服务器配置正确,您应该能够轻松地了解短消息和长文档之间的长度差异.另一个选择:在请求中设置content-range头域(再次假定服务器的行为正确WRT的HTTP规范).

发送GET请求后,我不认为在客户端解决问题是这样的:那时候,网络已经做了很大的努力,你不会真的保存浪费的资源.

参考:http header definitions

猜你在找的Ruby相关文章