我有一个包含文件的CDN,我想创建一个小工具,根据预定义的文件列表检查文件是否存在。
我尝试使用WebRequest,但似乎要下载该文件。我只想在不下载的情况下获取内容长度。 (类似于卷曲-I)
由于
答案 0 :(得分:2)
您可以发出HEAD请求以获取该信息。
引自w3.org:
HEAD方法与GET相同,只是服务器不能 在响应中返回一个消息体。元信息包含 在HTTP头中响应HEAD请求应该是相同的 响应GET请求发送的信息。这种方法可以 用于获取有关该隐含的实体的元信息 请求而不转移实体主体本身。这个方法是 经常用于测试超文本链接的有效性,可访问性, 和最近的修改。
对HEAD请求的响应可能是可缓存的 响应中包含的信息可用于更新a 以前从该资源缓存的实体。如果是新字段值 表示缓存的实体与当前实体不同(如 将通过内容长度,内容-MD5,ETag或更改来表示 Last-Modified),然后缓存必须将缓存条目视为陈旧。
从我在其他地方读到的内容,内容长度应该出现在HEAD响应中。但“应该”并不一定意味着它总是(见:Content-Length header with HEAD requests?)