加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

golang http服务器跨域问题解决

发布时间:2020-12-16 09:33:05 所属栏目:大数据 来源:网络整理
导读:func main() { openHttpListen()} func openHttpListen() { http.HandleFunc( " / " ,receiveClientRequest) fmt.Println( " go server start running... " ) err : = http.ListenAndServe( " :9090 " ,nil) if err != nil { log.Fatal( " ListenAndServe: "
func main() {
 
    openHttpListen()
}
 
func openHttpListen() {
    http.HandleFunc("/",receiveClientRequest)
    fmt.Println("go server start running...")
 
    err := http.ListenAndServe(":9090",nil)
    if err != nil {
        log.Fatal("ListenAndServe: ",err)
    }
}
 
func receiveClientRequest(w http.ResponseWriter,r *http.Request) {
 
    w.Header().Set("Access-Control-Allow-Origin","*")             //允许访问所有域
    w.Header().Add("Access-Control-Allow-Headers","Content-Type") //header的类型
    w.Header().Set("content-type","application/json")             //返回数据格式是json
 
    r.ParseForm()
    fmt.Println("收到客户端请求: ",r.Form)

测试下来,发现web端发送数据给go服务器是可以收到的,就在go服务器返回数据给client web端的时候,出现了跨域错误提示,给http.ResponseWriter.Header() 加这三行代码即可:

w.Header().Set("Access-Control-Allow-Origin","*")             //允许访问所有域
w.Header().Add("Access-Control-Allow-Headers","Content-Type") //header的类型
w.Header().Set("content-type","application/json")             //返回数据格式是json

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读