Go语言的跨域资源共享怎么实现

532
2024/4/23 15:04:08
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Go语言中实现跨域资源共享(CORS),可以通过使用net/http包中的Handler接口和http.HandlerFunc类型来处理HTTP请求。

以下是一个简单的示例代码,实现了一个带有CORS支持的HTTP服务器:

package main

import (
	"net/http"
)

func main() {
	// 创建一个HTTP处理函数
	handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		// 设置响应头,允许所有来源的请求
		w.Header().Set("Access-Control-Allow-Origin", "*")
		// 处理请求
		w.Write([]byte("Hello, CORS!"))
	})

	// 创建一个HTTP服务器
	server := &http.Server{
		Addr:    ":8080",
		Handler: handler,
	}

	// 启动服务器
	server.ListenAndServe()
}

在上面的示例中,我们创建了一个HTTP处理函数,并设置了Access-Control-Allow-Origin响应头,以允许所有来源的请求。最后,我们创建了一个HTTP服务器,并将处理函数传递给它。

通过这种方式,我们就可以实现一个支持CORS的HTTP服务器。当客户端发送跨域请求时,服务器会在响应头中包含适当的CORS头信息,以允许跨域请求的成功完成。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: go语言如何实现数组的调用