zoukankan      html  css  js  c++  java
  • golang http服务器跨域问题解决

    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
  • 相关阅读:
    vim编辑器
    Linux实用命令
    EhCache缓存页面、局部页面和对象缓存
    微信公众号开发之获取微信用户的openID
    23种设计模式概要及易懂的例子
    CSS Hack
    BOM之navigator对象和用户代理检测
    动态脚本
    DOM遍历
    DOM范围
  • 原文地址:https://www.cnblogs.com/gao88/p/9822748.html
Copyright © 2011-2022 走看看