2017-03-09 121 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方法是相同的,只是在響應

相關問題