我正在尝试使用 Go 登录网站并存储 cookie 供以后使用。
您能否提供用于发布表单、存储 cookie 和使用 cookie 访问另一个页面的示例代码?
我想我可能需要通过研究 http://gotour.golang.org/src/pkg/net/http/client.go 来创建一个客户端来存储 cookie
package main
import ("net/http"
"log"
"net/url"
)
func Login(user, password string) string {
postUrl := "http://www.pge.com/eum/login"
// Set up Login
values := make(url.Values)
values.Set("user", user)
values.Set("password", password)
// Submit form
resp, err := http.PostForm(postUrl, values)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
// How do I store cookies?
return "Hello"
}
func ViewBill(url string, cookies) string {
//What do I put here?
}
原文由 Lionel 发布,翻译遵循 CC BY-SA 4.0 许可协议
Go 1.1 引入了一个 cookie jar 实现
net/http/cookiejar
。