ICode9

精准搜索请尝试: 精确搜索
  • Gin框架系列之模板语法2022-04-14 08:01:30

    在Gin框架模板中使用 {{ }} 括号进行变量渲染,那么它自带有一些语法用法。 一、上下文 . 访问当前位置的上下文 $ 引用当前模板根级的上下文 $. 引用模板中的根级上下文 后台: package main import ( "github.com/gin-gonic/gin" "net/http" ) func Index(ctx *gin.Con

  • go gin最左路由前缀树2022-04-11 18:32:37

    gin也用了一段时间了,写个文总结一下路由部分吧,以免忘记。 关键名称:最左最短前缀树。 假设,最开始的路由route.GET("/R1R2R3R4R5..........Rn", func(c *gin.Context) {} ),这个时候树还是空的,直接调用n.insertChild(path, fullPath, handlers)函数。 对于/R1R2R3R4R5..........Rn,分

  • 4-Gin路由基础2022-04-09 23:03:59

    一 路由的基本使用 gin 框架中采用的路由库是基于httprouter做的 地址为:https://github.com/julienschmidt/httprouter 1.1 基本路由 package main import ( "github.com/gin-gonic/gin" "net/http" ) func funcPost(c *gin.Context) { c.String(http.StatusOK, "post请求

  • 6-Gin模板渲染2022-04-09 23:03:07

    一 基本使用 第一步:index.html 在项目根路径下新建templates文件夹,文件夹内写模板文件,如index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>第一个模板文件</title> </head> <body> 我的名字是:{{.nam

  • 8-Gin同步异步2022-04-09 23:02:40

    一 同步异步 goroutine机制可以方便地实现异步处理 另外,在启动新的goroutine时,不应该使用原始上下文,必须使用它的只读副本 package main import ( "github.com/gin-gonic/gin" "log" "time" ) func main() { r := gin.New() // 1.异步 r.GET("/long_async",

  • 7-Gin静态文件2022-04-09 23:01:56

    一 静态文件 当我们渲染的 HTML 文件中引用了静态文件时,我们需要配置静态 web 服务 r.Static("/static", "./static") 前面的/static 表示路由 后面的./static 表示路径 1.1 开启static访问 //1 第一步:在路由中注册 // router.Static("/static", "./static") 开启static访问 //2

  • 9-Gin路由高级2022-04-09 23:01:31

    一 路由分组 routes group是为了管理一些相同的URL https://gin-gonic.com/zh-cn/docs/examples/grouping-routes/ package main import ( "fmt" "github.com/gin-gonic/gin" ) // gin的helloWorld func main() { // 1.创建路由 r := gin.Default() // 路由组1

  • 10-Gin定义控制器2022-04-09 23:01:16

    一 自定义控制器 当我们的项目比较大的时候有必要对我们的控制器进行分组,我们采用MVC架构,自定义C层controller,控制器 目录结构 main.go package main import ( "gin_test/routers" "github.com/gin-gonic/gin" ) func main() { r := gin.Default() routers.LoadGoodsRoute

  • 11-Gin中间件2022-04-09 23:00:57

    一 中间件介绍 Gin 框架允许开发者在处理请求的过程中,加入用户自己的钩子(Hook)函数。这个钩子函 数就叫中间件,中间件适合处理一些公共的业务逻辑,比如登录认证、权限校验、数据分页、 记录日志、耗时统计等。 通俗的讲:中间件就是匹配路由前和匹配路由完成后执行的一系列操作 二

  • gin BindJSON2022-04-07 16:03:32

    r:=gin.New() r.GET("/", func(c *gin.Context) { var cc SSHconfig if err:=c.BindJSON(&cc);err!=nil{ log.Println(err) } var ( //u model.CoreAccount p model.CoreGrained //grou

  • 【Gin学习】Golang - Gin框架 LoadHTMLGlob加载模板文件2022-04-05 14:33:44

    gin里LoadHTMLGlob这个函数的用法, 首先啊,LoadHTMLGlob这个只能使用一次 ,多次调用的话 最后一次调用生效 还有这个加载子文件夹下的模板文件 刚开始的时候 我的文件结构是这样的 views-- | |--index.html |       |--user--

  • go的gin跨域中间件2022-03-29 17:33:39

    func CORSMiddleware() gin.HandlerFunc {     return func(c *gin.Context) {         c.Writer.Header().Set("Access-Control-Allow-Origin", "*")         c.Writer.Header().Set("Access-Control-Allow-Credentials", "true")  

  • gin-vue-admin学习记录2022-03-19 19:34:14

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 介绍配置初始化 上线准备工作(打包项目)宝塔部署配置上线 介绍 gva是国人大佬奇淼用golang开发的后台管理系统 网站直达: https://github.com/flipped-aurora/gin-vue-admin 项目架构: 前后端分离

  • gin部署2022-03-07 14:31:07

          https://blog.csdn.net/weixin_32467423/article/details/119636405?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task

  • Gin框架使用jwt-go配合中间件认证2022-03-04 04:31:17

    参考文档 // 文档 https://github.com/golang-jwt/jwt https://pkg.go.dev/github.com/golang-jwt/jwt@v3.2.2+incompatible#example-NewWithClaims-CustomClaimsType https://gin-gonic.com/zh-cn/docs/examples/using-middleware/ https://gin-gonic.com/zh-cn/docs/examples/cu

  • Gin-Vue-Admin 前后端获取用户信息方式2022-02-28 18:33:13

    前端 前端登陆成功后,gin-vue-admin会将登录用户存储到vuex中,所以获取时直接在vuex中获取就好,具体代码如下: 计算属性中获取 下面同时获取了登陆后的token和用户信息 computed: { ...mapGetters('user', ['userInfo', 'token']) }, 使用 console.log('user-info', this.userIn

  • gin base64 转 图片 直接显示在前端2022-02-28 16:32:05

    环境 go 1.17.1 gin 1.7.7 后端代码 package main import ( "encoding/base64" "github.com/gin-gonic/gin" ) func main() { engine := gin.Default() imageBase64 := "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAAAAl

  • Gin框架入门2022-02-27 23:02:20

    参考文档 Gin: https://gin-gonic.com/zh-cn/docs/quickstart/ net/http: https://pkg.go.dev/net/http 代码分析 package main import ( "fmt" "time" // 时间包 "net/http" // 提供了HTTP客户端和服务端的实现 "github.com/gin-gonic/gin"

  • 同一个浏览器多次请求竟然发现是串行执行的,见鬼了。2022-02-21 17:35:38

    今天在对一个执行时间比较长方法做下控制,本想是多次请求访问的时候,同时只有一个在执行这个耗时的方法,其他请求能够直接返回当前状态。如下: //触发一次账号同步 func SyncNow(c *gin.Context) { account := c.Param("account") pwd := c.Param("pwd") //这些写死了认证账号和密

  • JWT---go2022-02-20 21:33:33

    package main import ( "errors" "fmt" "github.com/dgrijalva/jwt-go" "github.com/gin-gonic/gin" "net/http" "strings" "time" ) // MyClaims 自定义声明结构体并内嵌jwt.StandardClaims // jwt包自带的

  • 微服务中如何将grpc的code转换成http的状态码2022-02-20 14:33:33

    func HandleGrpcErrorToHttp(err error, c *gin.Context) { // 将grpc的code转换成http的状态码 if err != nil { if e, ok := status.FromError(err); ok { switch e.Code() { case codes.NotFound: c.JSON(http.StatusNotFound, gin.H{"msg": e.Message()})

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有