码迷,mamicode.com
首页 > Web开发 > 详细

golang http服务器跨域问题解决

时间:2016-04-12 14:14:33      阅读:382      评论:0      收藏:0      [点我收藏+]

标签:

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

 

golang http服务器跨域问题解决

标签:

原文地址:http://www.cnblogs.com/JD85/p/5382368.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!