2016-11-29 1 views
0

、要求は二つの値を返しますnet/http記事多くgolangのように:レスポンスとエラー:HTTP関連のエラーのためにgolang httpの応答エラーにはどのようなものがありますか?

resp, err := http.Get("http://example.com/") 
if err != nil { 
    // handle error 
} 
defer resp.Body.Close() 
body, err := ioutil.ReadAll(resp.Body) 

を、それは502のようなステータスコードでrespで返されます、400など何ですか考えられるエラーが返されますか?私はそれらを扱うことができる前にそれらを知る必要があります。

+1

https://golang.org/pkg/net/http/#pkg-constants –

+0

@Martyを読みます'resp'で返されるため、ステータスコードエラーを意味するわけではありません。上記のコードの最初の行で' err'として返されることを知りたいと思います。 – cizixs

答えて

4
  1. あまりが
  2. TCP \書込み\読み込みタイムアウト
  3. 302の状態接続時間をリダイレクト
  4. URL解析エラーが、ヌルLocationヘッダー、正常のように出ることができる

など

ソースコードをhttpパッケージ。次に、この関数によって返されたすべてのエラーを見つけることができますhttp.Get

0

これらのエラーは、ネットワークタイムアウトなどのようなネットワーク関連のエラーがほとんどです。それらを別々に処理する必要はありません。あなたは

resp, err := http.Get("http://google.com/") 
    if err != nil { 
     fmt.Println(err.Error()) 
     os.Exit(1) 
} 
0

そこのような多くのエラー応答である: - 私は

301 (Moved Permanently) 
302 (Found) 
303 (See Other) 
307 (Temporary Redirect) 

は、あなたが行くより良いとhttp.Get

関連する問題