2013-08-24 28 views
14
bir http isteğine yanıt bir çerez ile bir yönlendirme (http kodu 302) olması durumunda

,Golang: çerez ile yeri izlemesini nasıl

Eğer çerez ile yeni konumu takip etmek için Git istemcisi talimat nasıl Alındı?

COOKIEFILE = "" 
AUTOREFERER = 1 
FOLLOWLOCATION = 1 

nasıl Git bunu yapabilir:

CURL içinde

, bu kolayca ile müşteri ayarlayarak elde edilebilir?

cevap

23

Go 1.1 ile bunun için net/http/cookiejar kullanabilirsiniz.

package main 

import (
    "golang.org/x/net/publicsuffix" 
    "io/ioutil" 
    "log" 
    "net/http" 
    "net/http/cookiejar" 
) 

func main() { 
    options := cookiejar.Options{ 
     PublicSuffixList: publicsuffix.List, 
    } 
    jar, err := cookiejar.New(&options) 
    if err != nil { 
     log.Fatal(err) 
    } 
    client := http.Client{Jar: jar} 
    resp, err := client.Get("http://dubbelboer.com/302cookie.php") 
    if err != nil { 
     log.Fatal(err) 
    } 
    data, err := ioutil.ReadAll(resp.Body) 
    resp.Body.Close() 
    if err != nil { 
     log.Fatal(err) 
    } 
    log.Println(string(data)) 
} 
+0

Çok teşekkürler: Burada

çalışan bir örnektir! Bir cookiejar ile bir istemci kullanırken çalışır! –