2017-03-09 117 views
-1

我要检查,如果一个大文件使用golang在Web服务器上存在:如何使用golang检查网页文件是否存在?

resp, err := http.Get("http://aa.com/aa.mp4") 
if err != nil { 
    return false 
    } 
if resp.StatusCode != http.StatusOK { 
    return false 
} 

我能得到我想要的东西,但aa.mp4是一个大的文件,所以这种方式看起来非最佳。有另一种方法吗?

+1

这不是如何HTTP的工作原理服务器不能返回一个消息的身体得到: HTTP没有“网络服务器上存在文件”的概念。根据服务器的不同,你可以尝试一个HEAD请求。 – Volker

回答

4

你可以做一个HEAD请求,而不是http.Head()

这是相同的GET,但不会下载的身体。

resp, err := http.Head("http://aa.com/aa.mp4") 
    if err != nil { 
    return false 
    } 
    if resp.StatusCode != http.StatusOK { 
    return false 
    } 

从HTTP规范:

HEAD方法是相同的,只是在响应

相关问题