草庐IT

gin-gonic

全部标签

在线客服系统的源码中Golang Gin框架实现IP白名单机制

我的客服系统有一些接口是专门给内部调用的,只允许其他内部系统来调用,不允许随意访问,可以使用IP白名单机制使用Gin框架实现IP白名单机制可以使用中间件的方式实现。你可以编写一个中间件函数,在每个请求到来时检查它的IP地址是否在白名单中,如果不在,则返回错误信息。例如,你可以这样编写中间件函数:funcIPWhiteList(whitelist[]string)gin.HandlerFunc{returnfunc(c*gin.Context){//获取请求的IP地址ip:=c.ClientIP()//检查IP地址是否在白名单中allowed:=falsefor_,value:=rangewhi

在线客服系统的源码中Golang Gin框架实现IP白名单机制

我的客服系统有一些接口是专门给内部调用的,只允许其他内部系统来调用,不允许随意访问,可以使用IP白名单机制使用Gin框架实现IP白名单机制可以使用中间件的方式实现。你可以编写一个中间件函数,在每个请求到来时检查它的IP地址是否在白名单中,如果不在,则返回错误信息。例如,你可以这样编写中间件函数:funcIPWhiteList(whitelist[]string)gin.HandlerFunc{returnfunc(c*gin.Context){//获取请求的IP地址ip:=c.ClientIP()//检查IP地址是否在白名单中allowed:=falsefor_,value:=rangewhi

Gin框架实战——HTML渲染

  Gin框架实战——HTML渲染最近使用Go的Gin框架做了个简单的前端网页,记录一下细节~1.加载静态文件    由于网页需要使用css、图片等渲染,而静态文件必须先声明:否则模板中调用加载不出来,这个很重要,即使你把文件放到对应路径下,html中也写了相应的路径,但是开启go服务端的网页,会显示不出来样式、图片等。因此需要加载静态文件。//Default返回一个默认的路由r:=gin.Default()r.StaticFS("/public",http.Dir("D:\\Gotest\\web1\\web\\static"))//相当于更换路径。加载静态文件r.StaticFS("/fo

Gin框架实战——HTML渲染

  Gin框架实战——HTML渲染最近使用Go的Gin框架做了个简单的前端网页,记录一下细节~1.加载静态文件    由于网页需要使用css、图片等渲染,而静态文件必须先声明:否则模板中调用加载不出来,这个很重要,即使你把文件放到对应路径下,html中也写了相应的路径,但是开启go服务端的网页,会显示不出来样式、图片等。因此需要加载静态文件。//Default返回一个默认的路由r:=gin.Default()r.StaticFS("/public",http.Dir("D:\\Gotest\\web1\\web\\static"))//相当于更换路径。加载静态文件r.StaticFS("/fo

客服系统即时通讯IM开发(二)Golang + Gin框架实现服务端WebScoket【唯一客服】网站在线客服系统

我的客服系统使用的Golang+Gin作为后端服务,所以下面的代码是演示demo在Go语言中使用Gin框架实现WebSocket的方法如下:安装gin-gonic/websocket库。在Gin的路由处理函数中使用ws.Upgrade函数将HTTP连接升级为WebSocket连接。在路由处理函数中使用conn.ReadMessage和conn.WriteMessage函数接收和发送消息。例如:packagemainimport("net/http""github.com/gin-gonic/gin""github.com/gin-gonic/websocket")varupgrader=web

客服系统即时通讯IM开发(二)Golang + Gin框架实现服务端WebScoket【唯一客服】网站在线客服系统

我的客服系统使用的Golang+Gin作为后端服务,所以下面的代码是演示demo在Go语言中使用Gin框架实现WebSocket的方法如下:安装gin-gonic/websocket库。在Gin的路由处理函数中使用ws.Upgrade函数将HTTP连接升级为WebSocket连接。在路由处理函数中使用conn.ReadMessage和conn.WriteMessage函数接收和发送消息。例如:packagemainimport("net/http""github.com/gin-gonic/gin""github.com/gin-gonic/websocket")varupgrader=web

Go Gin使用get/post方法获取网页数据,获取form表单数据

简单介绍一下Go中Gin使用get和post方法获取前端数据1.使用get方法获取url中的参数因为我使用的网页只需要在url上传一个参数,简单介绍一下,get方法的传参吧,可能不全,后续补充~在主函数使用get/post方式加载需要从网页中使用get/post方法获取数据如下(默认使用get方法加载页面)对第三个使用get方法加载页面,并使用get方法获取URL中的参数。前端使用传参网页的url为:后端获取参数:addProof.GetRouteParams函数为:funcGetRouteParams(c*gin.Context){name=c.Query("name")c.HTML(htt

Go Gin使用get/post方法获取网页数据,获取form表单数据

简单介绍一下Go中Gin使用get和post方法获取前端数据1.使用get方法获取url中的参数因为我使用的网页只需要在url上传一个参数,简单介绍一下,get方法的传参吧,可能不全,后续补充~在主函数使用get/post方式加载需要从网页中使用get/post方法获取数据如下(默认使用get方法加载页面)对第三个使用get方法加载页面,并使用get方法获取URL中的参数。前端使用传参网页的url为:后端获取参数:addProof.GetRouteParams函数为:funcGetRouteParams(c*gin.Context){name=c.Query("name")c.HTML(htt

gin跨域(CROS)时GET和POST正常但PUT和DELETE被阻止

问题表现同一个项目请求同一个服务时,Get和Post请求正常,但是Put和Delete一直报跨域错误的问题AccesstoXMLHttpRequestat'http://127.0.0.1:8011/api/organization'fromorigin'http://localhost:9527'hasbeenblockedbyCORSpolicy:MethodPUTisnotallowedbyAccess-Control-Allow-Methodsinpreflightresponse.解决方案根据问题描述,很清楚是PUT方法不行,于是去查看服务端的跨域中间件,发现没有在Header中明确

gin跨域(CROS)时GET和POST正常但PUT和DELETE被阻止

问题表现同一个项目请求同一个服务时,Get和Post请求正常,但是Put和Delete一直报跨域错误的问题AccesstoXMLHttpRequestat'http://127.0.0.1:8011/api/organization'fromorigin'http://localhost:9527'hasbeenblockedbyCORSpolicy:MethodPUTisnotallowedbyAccess-Control-Allow-Methodsinpreflightresponse.解决方案根据问题描述,很清楚是PUT方法不行,于是去查看服务端的跨域中间件,发现没有在Header中明确