go语言怎样把json格式的数据发给前端jquery处理

Python011

go语言怎样把json格式的数据发给前端jquery处理,第1张

这个东西跟语言没关系,你要搞清楚http的流程,在你这种情况下,go语言写的程序是作为http server,jquery作为浏览器中运行的脚本,你可以使用jquery向服务器发送ajax请求,服务器返回json数据就可以了, http.Handle("/json", fooHandler)

http.HandleFunc("/test", func(w http.ResponseWriter, r *http.Request) {

fmt.Fprintf(w, "这里写上你的json数据就行了")

})

log.Fatal(http.ListenAndServe(":8080", nil))

对于jquery就

$.get("/test/json",function(m){alert(m)})

就可以了

协议+域名+端口号都相同才是同域

在 HTML 中,<a>, <form>, <img>, <script>, <iframe>, <link>等标签以及 Ajax 都可以指向一个资源地址,而所谓的跨域请求就是指:当前发起请求的域与该请求指向的资源所在的域不一样。

如果对跨域请求不做限制,会有安全隐患

跨源资源共享 Cross-Origin Resource Sharing(CORS) 是一个新的 W3C 标准,它新增的一组HTTP首部字段,允许服务端其声明哪些源站有权限访问哪些资源。换言之,它允许浏览器向声明了 CORS 的跨域服务器,发出 XMLHttpReuest 请求,从而克服 Ajax 只能同源使用的限制。

在使用go语言写测试服务的时候遇到了前端跨域请求问题,只需在go中加入

https://www.jianshu.com/p/f880878c1398

http跨域: https://zhangbinalan.gitbooks.io/protocol/content/httpkua_yu_qing_qiu.html

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS