首页 > 其他分享 >Gin学习笔记--使用路由组分类处理请求

Gin学习笔记--使用路由组分类处理请求

时间:2023-03-11 17:23:35浏览次数:29  
标签:engine GET -- ctx gin Gin fullPath 路由

在实际的项目开发中,均是模块化开发,同一模块化的功能接口,往往会有相同的接口前缀,

比如说用户有不同的注册,登录等

注册:http:..localhost:8080/user/register

登录:http://localhost:8080/user/login

用户信息:http://localhost:8080/user/info

类似这样的接口,均属于相同模块的功能接口,可以使用路由组进行分类处理

Group

gin框架中可以使用路由组来实现对路由的分类

路由组是router.Group中的一个方法,用于对请求进行分组,

类似逻辑如下:

  engine:=gin.Default()

  userGroup := engine.Group("/user")

  userGroup.GET("/register",registerHandle)

  userGroup.GET("/login",loginHandle)

  userGroup.GET("/info",infoHandle)

示例代码:

package main

import (
    "fmt"
    "github.com/gin-gonic/gin"
)

func main() {
    engine := gin.Default()
    UserGroup := engine.Group("/user")
    UserGroup.GET("/login", loginHandle)
    UserGroup.GET("/register", registerHandle)
    UserGroup.GET("/info", infoHandle)
    engine.Run()
}

func registerHandle(ctx *gin.Context) {
    fullPath := "用户注册" + ctx.FullPath()
    fmt.Println(fullPath)
    ctx.Writer.WriteString(fullPath)
}
func loginHandle(ctx *gin.Context) {
    fullPath := "用户登录:" + ctx.FullPath()
    fmt.Println(fullPath)
    ctx.Writer.WriteString(fullPath)
}
func infoHandle(ctx *gin.Context) {
    fullPath := "用户信息:" + ctx.FullPath()
    fmt.Println(fullPath)
    ctx.Writer.WriteString(fullPath)
}

 

标签:engine,GET,--,ctx,gin,Gin,fullPath,路由
From: https://www.cnblogs.com/99kol/p/17206489.html

相关文章

  • Vulnhub之Source靶机详细测试过程
    Source识别目标主机IP地址(kali㉿kali)-[~/Desktop/Vulnhub/Source]└─$sudonetdiscover-ieth1-r10.1.1.0/24Currentlyscanning:10.1.1.0/24|ScreenVi......
  • oracle建表语句,添加主键、索引、注释,插入数据,添加序列
    createtableFND_COMPANIES_42624(COMPANY_IDnumber(3)primarykey,--公司IDnumber序列COMPANY_CODEVARCHAR2(30)notnull,--公司......
  • 常用DOS命令
    win+r打开运行,输入cmd即可打开Windows命令窗口    ......
  • node.js安装与使用
    Node.js点击下载历史版本#查看版本node-vnpm-v#npm升级npminstall-gnpm卸载#控制面板卸载node.js#删除`C:\Users\cherf\AppData\Roaming`目录下的......
  • 《渗透测试》HTTP数据包&Postman构造&请求方法&请求头修改&状态码判断 2023 Day10
    1    2请求头各参数及解释  3响应头参数及解释  4get请求  4post请求   -方法1、常规请求-Get2、用户登录-Post•get:向特定资......
  • 04-面试必会-Redis篇
    01-你们项目中哪里用到了Redis?在我们的项目中很多地方都用到了Redis,Redis在我们的项目中主要有三个作用:使用Redis做热点数据缓存/接口数据缓存使用Redis存储一......
  • 03-面试必会-Mysql篇
    1.Mysql查询语句的书写顺序Select[distinct]<字段名称>from表1[<join类型>join表2on<join条件>]where<where条件>groupby<字段>having<......
  • 02-面试必会-SSM框架篇
    01-什么是SpringIOC和DI?IOC:控制翻转,它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所谓的“控制反转”概念就是对......
  • 01-面试必会-JAVA基础篇
    1.Final有什么用?被final修饰的类不可以被继承被final修饰的方法不可以被重写被final修饰的变量不可以被改变,被final修饰不可变的是变量的引用,而不是引用指向的内容,......
  • 快速幂——分治思想
    问题:求解pow(x,n)解题思路:1.将n个x相乘,时间复杂度为O(n)2.分治思想:二进制数转化成10进制数的方法:二进制数为n=2k-1 *ak  + 2k-2*ak-1+......