zoukankan      html  css  js  c++  java
  • gin解决CORS跨域问题

    直接设置跨域参数

    新建 cors 文件

    package cors
    
    import (
    	"time"
    
    	"github.com/gin-contrib/cors"
    	"github.com/gin-gonic/gin"
    )
    
    func Cors() gin.HandlerFunc {
    	c := cors.Config{
    		AllowAllOrigins: true,
    		AllowMethods:    []string{"GET", "POST", "PUT", "DELETE", "PATCH"},
    		AllowHeaders:    []string{"Content-Type", "Access-Token", "Authorization"},
    		MaxAge:          6 * time.Hour,
    	}
    
    	return cors.New(c)
    }
    

    CORS 跨域中间件

    新建 cors 文件

    package cors
    
    import (
    	"net/http"
    
    	"github.com/gin-gonic/gin"
    )
    
    // 处理跨域请求,支持options访问
    func Cors() gin.HandlerFunc {
    	return func(c *gin.Context) {
    		method := c.Request.Method
    
    		c.Header("Access-Control-Allow-Origin", "*")
    		c.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT, DELETE, UPDATE")
    		c.Header("Access-Control-Allow-Headers", "*")
    		c.Header("Access-Control-Expose-Headers", "Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers, Cache-Control, Content-Language, Content-Type")
    		c.Header("Access-Control-Allow-Credentials", "true")
    
    		//放行所有OPTIONS方法
    		if method == "OPTIONS" {
    			c.AbortWithStatus(http.StatusNoContent)
    		}
    		// 处理请求
    		c.Next()
    	}
    }
    
    

    二选一 跨域设置

    func main() {
    	r := gin.New()
    
            // 跨域设置
    	r.Use(Cors())
    
    	r.GET("/test", func(c *gin.Context) {
    		example := c.MustGet("example").(string)
    
    		// 打印:"12345"
    		log.Println(example)
    	})
    
    	// 监听并在 0.0.0.0:8080 上启动服务
    	r.Run(":8080")
    }
    
  • 相关阅读:
    ssh2中的添,删,查,改。
    struts2中数据的传输
    SSH2中的笔记
    struts2中的拦截器
    struts.xml中的配置内容
    【spring源码分析】二、Aware
    【spring源码分析】一、BeanPostProcessor
    java常用名词缩写
    解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
    springboot使用redis缓存
  • 原文地址:https://www.cnblogs.com/niuben/p/15572189.html
Copyright © 2011-2022 走看看