我在邮递员中发出了一个 http post 请求,它工作正常,我还导出了 python 代码,响应数据也很好。但是当我使用带有 golang 语法的相同代码时,我无法获取响应数据。
import requests
headers = {
'Accept': 'application/json, text/javascript, */*; q=0.01',
'X-Apple-I-FD-Client-Info': '{"U":"Mozilla/5.0',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36',
'Content-Type': 'application/json',
'Origin': 'https://iforgot.apple.com',
'Referer': 'https://iforgot.apple.com/password/verify/appleid',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'en-US,en;q=0.9'
}
data = '{"id":"ali@gmail.com"}'
response = requests.post('https://iforgot.apple.com/password/verify/appleid', headers=headers, data=data)
print(response.text)
print(response)
上面带有 http 请求的代码工作正常。但是在 golang 中,它没有显示 python 请求所示的结果。
GoLang 代码是:
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"log"
"net/http"
)
func main() {
url := "https://iforgot.apple.com/password/verify/appleid"
method := "POST"
// payload := strings.NewReader("{\"id\":\"ali@gmail.com\"}")
reqBody, err := json.Marshal(map[string]string{
"id": "ali@gmail.com",
})
if err != nil {
print(err)
}
payload := bytes.NewBuffer(reqBody)
log.Println("A Payload is ", payload)
client := &http.Client{}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
}
}
我需要在 python 中得到的相同结果。
阿晨1998
慕勒3428872
相关分类