【发布时间】:2016-05-16 19:45:28
【问题描述】:
我需要通过不支持 HEAD 请求的 HTTP 检查 Web 服务器上是否存在远程文件(即使文件存在也返回 404)。 GET 请求确实返回 200 但我不需要下载可能很大的文件。我也尝试了套接字连接,但即使文件不存在,它们也会返回 200。有关如何检查远程 URL 是否有效存在的任何建议?谢谢。
【问题讨论】:
-
可能只下载 1 MB,并假设如果文件更大,文件存在?
我需要通过不支持 HEAD 请求的 HTTP 检查 Web 服务器上是否存在远程文件(即使文件存在也返回 404)。 GET 请求确实返回 200 但我不需要下载可能很大的文件。我也尝试了套接字连接,但即使文件不存在,它们也会返回 200。有关如何检查远程 URL 是否有效存在的任何建议?谢谢。
【问题讨论】:
好吧,您需要发出下载文件的请求,但不要读取响应流。如果使用 HttpWebRequest,请求将在服务器发送 headers 时执行,而不是文件的内容,所以你可以得到响应,检查 headers 并处理它,它不会下载完整的文件,只是一些字节当您检查标题时。
【讨论】:
HttpWebRequest 会是GET? OP 说,有错误的标题。
GET 无关。 +1