Go gin 全局跨域请求处理如何设置?

14 min read

Go gin 的跨域请求处理可以通过设置 middleware 来实现。具体步骤如下:

  1. 导入跨域中间件

Go gin 官方提供了跨域中间件 cors,需要先导入:

import "github.com/gin-contrib/cors"
  1. 实例化跨域配置

通过如下代码创建跨域配置:

config := cors.DefaultConfig()
config.AllowOrigins = []string{"http://localhost:3000"} // 允许哪些源站访问
config.AllowMethods = []string{"GET", "POST", "OPTIONS"} // 允许哪些 HTTP 方法
config.AllowHeaders = []string{"Origin", "Content-Type"} // 允许哪些 HTTP 头部信息

其中,AllowOrigins 指定了可以跨域访问的源站;AllowMethods 指定了支持的 HTTP 方法;AllowHeaders 指定了允许传递的 HTTP 头部信息。

  1. 使用跨域中间件

在路由注册时使用跨域中间件,并传入之前实例化的跨域配置:

router := gin.Default()
router.Use(cors.New(config))

这样就完成了 Go gin 的全局跨域请求处理设置。