go - 如何在 Golang 中修复 ‘net/http set header ORIGIN’

标签 go

我构建了一小段代码,具有从网站获取信息的功能, 看起来它无法设置原点, 因为在 php 中使用 curl,我能够获得 http 状态为 200 的数据。 然后我得到403。 希望大家帮忙。非常感谢

req, err:= http.NewRequest("GET", "https://immortal.hydrax.net/0/BRlsM329RNjbSqlWnRF36A4Kf5jx6qlZmoeLnJRi9A6b", nil)
    if err != nil {
        log.Fatal(err)
    }

    req.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36")
    req.Header.Set("Origin", "https://hydrax.net")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        log.Fatal(err)
    }
    defer resp.Body.Close()
    fmt.Printf("%s", resp.Status)

输出:403 禁止退出

最佳答案

设置原点没有意义,因为它不能以编程方式修改。 可能您的用户代理 header 不正确。试试这个

    req.Header.Set("User-Agent", `Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11`)

关于go - 如何在 Golang 中修复 ‘net/http set header ORIGIN’,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55889593/

相关文章:

Golang 中的 map 集

python - 去 "&^"算子,什么意思?

go - 如何在 GORM 中进行多表连接

go - 如何从Go中的字符串方法名称调用另一个包的方法

javascript - 内部网络上的 Websockets 地址需要静态 ip?

go - 如何检查 URL 参数是否存在

go - 绑定(bind)请求方式POST

regex - 从捕获中排除符号并仅获取所需数据?

string - 将二进制数据从字节数组转换为字符串并返回 golang 是否安全?

http - GOLANG 如何使用 http.FileServer 从模板目录加载某个 html 文件