上下文:我使用 traefik 作为我的反向代理向我的后端 Golang 服务器发送 HTTP 请求,我已经添加了一些 CORS 处理。它适用于 Postman,当我处理 HTTP GET 请求时
问题:我在浏览器上收到此 404 错误:
axios调用覆盖Host
axios.create({
baseURL: 'http://localhost',
})
axios.defaults.headers['Host'] = 'dev.docker.local'
在控制台中收到此错误
refused to set unsafe header "Host"
axios 使用 X-Host-Override 调用覆盖默认主机
axios.create({
baseURL: 'http://localhost',
})
axios.defaults.headers['X-Host-Override'] = 'dev.docker.local'
Axios 调用设置默认标头 - 似乎它总是使用 localhost 作为主机
axios.create({
baseURL: 'http://localhost',
headers: {'Host': 'dev.docker.local'}
})
在路由处理程序中设置 CORS
func About(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.Header().Set("Access-Control-Allow-Methods", "OPTIONS, GET")
w.Header().Set("Access-Control-Allow-Origin", "*")
w.Header().Set("Access-Control-Allow-Headers", "*")
aboutStruct := about{
Name: "Hello world",
}
w.WriteHeader(http.StatusOK)
j, _ := json.Marshal(aboutStrcut)
w.Write(j)
}