• 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
    
  • 相关阅读:
    springboot 之JPA
    Oracle数据库安装
    Pytho之Django
    springboot之docker化
    opencv之dlib库人脸识别
    opencv之调用摄像头
    springboot之多模块化项目打包
    python学习笔记2--list
    ETL测试
    Mockserver -MOCO的使用
  • 原文地址:https://www.cnblogs.com/JD85/p/5382368.html
Copyright © 2020-2023  润新知