guonaihong/gout

在做请求api的时候有个问题

Closed this issue · 8 comments

POST /1.1/guest/activate.json HTTP/1.1
Host: api.x.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36
Accept-Encoding: gzip
Authorization: Bearer AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA
Content-Type: application/json

{}

如上数据包使用 net/http 可以获取到数据,但是gout 就获取不到,很奇怪

方便贴下你的代码吗?

	headers := map[string]interface{}{
		"User-Agent":      "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
		"Accept-Encoding": "gzip",
		"Authorization":   "Bearer AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA",
	}

	gout.POST(Api_x + "1.1/guest/activate.json").Debug(true).SetProxy("http://127.0.0.1:7897").SetHeader(headers).Do()

可以在gout的请求里面打开.Debug(true)这个函数

可以在gout的请求里面打开.Debug(true)这个函数

尝试过,没有获取到相应体

// 创建代理URL
	// proxyUrl, err := url.Parse("http://127.0.0.1:8083")
	// if err != nil {
	// 	fmt.Println("Error parsing proxy URL:", err)
	// 	return ""
	// }

	// // 设置HTTP传输并配置代理
	// transport := &http.Transport{
	// 	Proxy: http.ProxyURL(proxyUrl),
	// }

	// // 创建HTTP客户端并设置传输
	// client := &http.Client{
	// 	Transport: transport,
	// }

	// req, _ := http.NewRequest("POST", "https://api.x.com/1.1/guest/activate.json", nil)
	// req.Header.Set("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36")
	// req.Header.Set("Authorization", "Bearer AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA")
	// res, err := client.Do(req)

	// if err != nil {
	// 	return ""
	// }
	// defer res.Body.Close()

	// body, _ := io.ReadAll(res.Body)

	// type TokenResp struct {
	// 	Token   string `json:"guest_token,omitempty"`
	// 	Code    int    `json:"code,omitempty"`
	// 	Message string `json:"message,omitempty"`
	// }
	// var tokenResp TokenResp
	// json.Unmarshal(body, &tokenResp)

	// log.Println(tokenResp)

http的包可以获取到内容

你url拼接的时候 Api_x + "1.1/guest/activate.json" ,少了"/"号

传给gout的url是这样的。https://api.x.com1.1/guest/activate.json
其实需要的是 https://api.x.com/1.1/guest/activate.json 这样的url

image url配置正确的,感谢作者了,明天我在研究看看