当前位置: 首页 > article >正文

Golang开发:跨域配置

跨域中间件

/lib/middleware/crossorigin_mv.go

package middleware

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

/**
 * 跨域设置
 */
func CrossOriginMiddleware() gin.HandlerFunc {
	return func(context *gin.Context) {
		method := context.Request.Method
		context.Header("Access-Control-Allow-Origin", "*")
		context.Header("Access-Control-Allow-Headers", "Content-Type,AccessToken,X-CSRF-Token, Authorization, Token")
		context.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS")
		context.Header("Access-Control-Expose-Headers", "Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers, Content-Type")
		context.Header("Access-Control-Allow-Credentials", "true")
		if method == "OPTIONS" {
			context.AbortWithStatus(http.StatusNoContent)
		}
		context.Next()
	}
}

使用中间件

ginServ := gin.Default()
ginServ.Use(middleware.CrossOriginMiddleware())

http://www.kler.cn/news/232646.html

相关文章:

  • 1987-2022年各省进出口总额数据整理(含进口和出口)(无缺失)
  • 12.0 Zookeeper 数据同步流程
  • [CUDA手搓]从零开始用C++ CUDA搭建一个卷积神经网络(LeNet),了解神经网络各个层背后算法原理
  • 什么是IDE,新手用哪个IDE比较好
  • idea(2023.3.3 ) spring boot热部署,修改热部署延迟时间
  • Unity2D 学习笔记 0.Unity需要记住的常用知识
  • 正版软件 - Proxyman:让网络调试变得更智能、更高效
  • 【深度学习理论】持续更新
  • 大模型基础架构的变革:剖析Transformer的挑战者(下)
  • linux 下 chrome 无法在设置里面配置代理的解决方法
  • Vue-57、Vue技术路由的参数如何传递
  • 友好城市——最长上升子序列
  • 在面试中如何回复擅长vue还是react
  • R语言绘图教程 | 双侧条形图绘制教程
  • unity-ios-解决内购商品在Appstore上面已配置,但在手机测试时却无法显示的问题
  • 一个 SpringBoot 项目能同时处理多少请求?
  • 目标检测:3采用YOLOv8 API训练自己的模型
  • 深度学习入门笔记(八)可以不断思考的模型:RNN与LSTM
  • CTFSHOW命令执行web入门29-54
  • Redis核心技术与实战【学习笔记】 - 31.番外篇:Redis客户端如何与服务器端交换命令和数据
  • C# 面向对象(OOP)编程关键知识点
  • 服务器内存使用率多少会影响正常访问?
  • Linux命令-badblocks命令(查找磁盘中损坏的区块)
  • ubuntu22.04 安装部署05:禁用默认显卡驱动
  • LeetCode 207:课程表(图论,利用拓扑排序判断是否有环)
  • 数据库管理-第148期 最强Oracle监控EMCC深入使用-05(20240208)
  • 详述FlinkSql Join操作
  • C/C++ - 异常处理
  • 麒麟信安战略投资湖南超能机器人技术有限公司,加速布局无人智能系统、自主可控机器人操作系统赛道
  • HarmonyOS远程真机调试方法