http - una - como ubicar a mi pareja
Golang: cómo seguir la ubicación con la cookie (1)
En caso de que la respuesta a una solicitud http sea una redirección (código http 302) con una cookie,
¿Cómo se puede instruir a su cliente Go para que siga la nueva ubicación con la cookie que se ha recibido?
en CURL, esto se puede lograr fácilmente configurando al cliente con:
COOKIEFILE = ""
AUTOREFERER = 1
FOLLOWLOCATION = 1
¿Cómo puedes hacer eso en Go?
Con Go 1.1 puedes usar net/http/cookiejar
para eso.
Aquí hay un ejemplo de trabajo:
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))
}