2016-10-03 74 views
0

在GoQuery,如果我創建一個片段如下:GoQuery響應代碼

doc, err := goquery.NewDocument(s) 
    if err != nil { 
     log.Fatal(err) 
    }     

其中s是一個有效的URL,可以看我的錯誤字符串,但如果頁面返回一個403,我該怎麼辦找出並停止,而不是讓我的代碼運行?

有沒有辦法找到使用Goquery的http響應?

回答

1

我不認爲NewDocument爲您提供基於狀態代碼的保釋機會,但您可以使用NewDocumentFromResponse代替。例如:

res, err := http.Get(url) 
if err != nil { 
    log.Fatal(err) 
} 

// Check for a 200 status (or a non-403, or whatever you want) 
if res.StatusCode == 200 { 
    doc, err := goquery.NewDocumentFromResponse(res) 
    if err != nil { 
     log.Fatal(err) 
    } 
    // ... 
} 
+0

作品,謝謝。 – tvishwa107