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

go语言gin框架学习

让框架去做http解包封包等,让我们的精力用在应用层开发
MVC模式
M: model,操作数据库gorm
view 视图 处理模板页面
contoller 控制器 路由 +逻辑函数

解决gin相关代码飘红的问题

记得启用gomodule
go env -w GO111MODULE=on然后到相应目录下执行 go mod init xxx
go mod tidy 
这样应该可以解决代码飘红,说找不到对应包的问题由于墙的原因 需要更换代理请执行 go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/

一、初步使用

  • 搭建好go的环境,目录结构如下
    在这里插入图片描述
//main.go
package mainimport "github.com/gin-gonic/gin"
func main()	{gin.Default()
}
go mod init quickstart
go mod tidy
  • 如果下载失败,换成golang官方源试试
 go env -w GOPROXY=https://proxy.golang.org,direct
  • 搭建一个基础的后端
//main.go
package mainimport "github.com/gin-gonic/gin"
func getuser(ctx *gin.Context){ctx.JSON(200,gin.H{"username":"you",})
}
func main()	{//获取引擎对象,即路由对象r:=gin.Default()//路由映射函数r.GET("/user",getuser)//启动:默认本机8080端口 类似django的runserverr.Run("127.0.0.1:8081")
}

访问相应路径如下
在这里插入图片描述

二、路由系统初识

2.1 服务端对客户端发起各种请求方式的处理

2.1.1 同一个资源的不同请求方式

//路由映射函数同一个路由,不同的方法执行不同的逻辑
r.GET("/book", func(context *gin.Context) {context.JSON(200,gin.H{"msg":"查询成功",})})
r.POST("/book", func(context *gin.Context) {context.JSON(200,gin.H{"msg":"新增成功",})})r.PUT("/book", func(context *gin.Context) {context.JSON(200,gin.H{"msg":"修改成功",})})r.DELETE("/book", func(context *gin.Context) {context.JSON(200,gin.H{"msg":"删除成功",})
})

2.1.2 Any

// any请求方式都可以访问
r.Any("/index", func(context *gin.Context) {context.JSON(200,gin.H{"msg":"任何方式都可以访问",})})

2.1.3 NoRoute


//所有路由都无法访问时,不管何种请求方式,走noroute时返回相应信息
r.NoRoute( func(context *gin.Context) {context.JSON(404,gin.H{"msg":"404 not find",})})

2.2 路由分组

  • gin框架没有像django那样的路由分组需要自己写

相关文章:

go语言gin框架学习

让框架去做http解包封包等,让我们的精力用在应用层开发 MVC模式 M: model,操作数据库gorm view 视图 处理模板页面 contoller 控制器 路由 逻辑函数 解决gin相关代码飘红的问题 记得启用gomodule go env -w GO111MODULEon然后到相应目录下执行 go mod i…...

Java奠基】Java经典案例讲解

目录 卖飞机票 找质数 开发验证码 数组元素的复制 评委打分 数字加密 数字解密 抢红包 模拟双色球 二维数组 卖飞机票 需求:机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。按照如下规则计算机票价格: 旺季&…...

新闻文本分类任务:使用Transformer实现

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…...

如何在 Vue 中使用 防抖 和 节流

大厂面试题分享 面试题库前后端面试题库 (面试必备) 推荐:★★★★★地址:前端面试题库 https://mp.weixin.qq.com/s?__bizMzU5NzA0NzQyNg&mid2247485824&idx3&sn70cd26a7c0c683de64802f6cb9835003&scene21#wech…...

美国Linux服务器系统增强安全的配置

美国Linux服务器系统可能出现的安全漏洞中,更多是由于不当的系统配置所造成的,用户们可以通过一些适当的安全配置来防止问题的发生。美国Linux服务器系统上运行的服务越多,不当配置的概率也就越高,那么系统出现安全问题的可能性也…...

【史上最全面esp32教程】oled显示篇

文章目录前言介绍及库下载基础使用引脚的连接使用函数总结前言 本节课主要讲的是OLED的基础使用。使用的oled为0.96寸,128*64。 大家的其他型号也是可以用的。 提示:以下是本篇文章正文内容,下面案例可供参考 介绍及库下载 oled的简介&…...

第十四届蓝桥杯三月真题刷题训练——第 21 天

目录 第 1 题:灭鼠先锋 问题描述 运行限制 代码: 思路: 第 2 题:小蓝与钥匙 问题描述 答案提交 运行限制 代码: 思路 : 第 3 题:李白打酒加强版 第 4 题:机房 第 1 题&#xff1…...

css绘制一个Pinia小菠萝

效果如下: pinia小菠萝分为头部和身体,头部三片叶子,菠萝为身体 头部 先绘制头部的盒子,将三片叶子至于头部盒子中 先绘制中间的叶子,利用border-radius实现叶子的效果,可以借助工具来快速实现圆角的预想…...

OpenCV入门(二十)快速学会OpenCV 19 对象测量

OpenCV入门(二十)快速学会OpenCV 19 对象测量1.对象测量2.多边形拟合3.计算对象中心作者:Xiou 1.对象测量 opencv 中对象测量包括: 如面积,周长,质心,边界框等。 弧长与面积测量; …...

TCP和UDP协议的区别?

是否面向连接: TCP 是面向连接的传输,UDP 是面向无连接的传输。 是否是可靠传输:TCP是可靠的传输服务,在传递数据之前,会有三次握手来建立连接;在数据传递时,有确认、窗口、重传、拥塞控制机制…...

【C语言蓝桥杯每日一题】——排序

【C语言蓝桥杯每日一题】—— 排序😎前言🙌排序🙌总结撒花💞😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介&am…...

学校官网的制作

学校官网 代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>*{margin: 0;padding: 0;}.top{background-color: #3D3BB8;width: 100%;position: fixed;padding: 20px 0 12px 0;}.box{width…...

【云原生】k8s集群命令行工具kubectl之故障排除和调试命令

kubectl之故障排除和调试命令一、describe二、logs三、attach四、exec五、port-forward六、proxy七、cp八、debug8.1、案例1&#xff1a;共享进程空间8.2、案例2&#xff1a;更改启动命令、容器镜像8.3、案例3&#xff1a;调试节点8.4、其他一、describe 显示某个资源或某组资…...

AJAX,Axios,JSON简单了解

一. AJAX简介概念: AJAX(Asynchronous JavaScript And XML): 异步的JavaScript 和XMLAJAX作用:1.与服务器进行数据交换: 通过AJAX可以给服务器发送请求&#xff0c;并获取服务器响应的数据使用了AJAX和服务器进行通信&#xff0c;就可以使用 HTMLAJAX来替换JSP页面了2.异步交互…...

私域流量该如何打造?这套模式直接借鉴

梦龙商业案例分析&#xff0c;带你了解商业背后的秘密 古往今来&#xff0c;消费方与购买方的地位似乎就没有变过&#xff0c;消费者始终是处在被动接受的地位。 但到了现在&#xff0c;其实消费地位早已经不知不觉产生了改变。 就比如以前都是厂家有什么消费者买什么&#…...

【jenkins部署】一文弄懂自动打包部署(前后台)

这里写目录标题序言软件安装jdkmaven配置maven阿里镜像以及本地库位置git安装安装jenkins插件安装环境配置创建项目配置gitee生成gitee WebHookmaven打包验证是否打包成功连接远程服务器并重启服务远程服务器生成私钥配置ssh项目配置ssh脚本vue项目打包nodejs安装下载配置环境变…...

应届生投腾讯,被面试官问了8个和 ThreadLocal 相关的问题。

问&#xff1a;谈一谈ThreadLocal的结构。 ThreadLocal内部维护了一个ThreadLocalMap静态内部类&#xff0c;ThreadLocalMap中又维护了一个Entry静态内部类&#xff0c;和Entry数组。 Entry类继承弱引用类WeakReference&#xff0c;Entry类有一个有参构造函数&#xff0c;参数…...

Linux命令scp用法

本文主要讲的是scp用法如果哪里不对欢迎指出&#xff0c;主页https://blog.csdn.net/qq_57785602?typeblogscp 可以在win系统使用&#xff0c;本文百分之八十写的是win系统怎么使用&#xff0c;在本地上到服务器文件,从服务器下载文件到本地用工具连接到公司服务器时&#xff…...

数据质量怎么监控

目录 一、任务基线级别 二、任务级别 & 表级别 三、字段级别 1. 对指标字段的监控 2. 对维度字段的监控 四、报表级别监控 五、总结 跑了几场面试&#xff0c;数据质量怎么监控是经常被问到的问题&#xff0c;仅次于自我介绍。 因为数据行业发展了几年&#xff0c;数…...

.NET Core 实现Excel的导入导出

.NET Core 使用NPOI实现Excel的导入导出前言NPOI简介一、安装相对应的程序包1.1、在 “管理NuGet程序包” 中的浏览搜索&#xff1a;“NPOI”二、新建Excel帮助类三、调用3.1、增加一个“keywords”模型类&#xff0c;用作导出3.2、添加一个控制器3.3、编写导入导出的控制器代码…...

如何使用MQTTnet客户端工厂模式:对象创建与资源管理的终极指南

如何使用MQTTnet客户端工厂模式&#xff1a;对象创建与资源管理的终极指南 【免费下载链接】MQTTnet MQTTnet is a high performance .NET library for MQTT based communication. It provides a MQTT client and a MQTT server (broker). The implementation is based on the …...

Nunchaku FLUX.1 CustomV3镜像免配置:预装ComfyUI+Custom Workflow+LoRA权重一体化方案

Nunchaku FLUX.1 CustomV3镜像免配置&#xff1a;预装ComfyUICustom WorkflowLoRA权重一体化方案 想体验最新的AI绘画模型&#xff0c;但被复杂的安装、配置和模型下载劝退&#xff1f;今天给大家介绍一个“开箱即用”的终极方案——Nunchaku FLUX.1 CustomV3镜像。它把文生图…...

STM32环境监测系统在烟花爆竹仓库的应用

1. 项目概述与背景烟花爆竹作为一种特殊商品&#xff0c;其存储环境的安全管理一直是行业痛点。传统的人工巡检方式存在明显的滞后性——我曾亲眼见过一家小型烟花仓库因为夜间温湿度骤变而引发自燃&#xff0c;等值班人员发现时火势已难以控制。这个基于STM32的环境监测系统正…...

视频硬字幕提取终极指南:本地化AI工具让字幕制作效率提升10倍

视频硬字幕提取终极指南&#xff1a;本地化AI工具让字幕制作效率提升10倍 【免费下载链接】video-subtitle-extractor 视频硬字幕提取&#xff0c;生成srt文件。无需申请第三方API&#xff0c;本地实现文本识别。基于深度学习的视频字幕提取框架&#xff0c;包含字幕区域检测、…...

共享店铺模式小程序开发方案

共享店铺模式是一种将线下实体店铺资源通过数字化手段进行整合与共享的商业模式&#xff0c;小程序作为轻量级应用非常适合实现这一目标。以下是开发共享店铺模式小程序的关键要点&#xff1a;核心功能模块设计用户端功能需包含注册登录、店铺浏览、预约下单、支付系统、评价反…...

【LangGraph】 官方demo调整为本地大模型实现

官网文档链接&#xff1a; https://docs.langchain.com/oss/python/langgraph/quickstart#full-code-example 样例代码&#xff1a; # 第一步&#xff1a;定义工具与大模型 # 导入LangChain工具装饰器&#xff0c;用于将普通函数封装为Agent可调用的工具 from langchain.tool…...

ZYNQ7010核心板硬件设计实战——从原理图到PCB的工程化思考

1. 从零开始构建ZYNQ7010核心板 第一次接触ZYNQ7010这种集成了ARM处理器和FPGA的SoC芯片时&#xff0c;我既兴奋又忐忑。这种混合架构的芯片确实强大&#xff0c;但随之而来的硬件设计复杂度也让人头疼。特别是当看到官方推荐的8层甚至12层PCB方案时&#xff0c;作为个人开发者…...

Jimeng LoRA在人工智能领域的创新应用:从理论到实践

Jimeng LoRA在人工智能领域的创新应用&#xff1a;从理论到实践 当AI模型能够像数字滤镜一样精准适配不同风格&#xff0c;人工智能的创作边界正在被重新定义。 1. 重新认识Jimeng LoRA&#xff1a;不只是微调&#xff0c;而是风格进化 Jimeng LoRA的出现彻底改变了我们对模型…...

EasyDarwin流媒体服务器初体验:除了RTMP推流,它的管理后台还能怎么玩?

EasyDarwin流媒体服务器深度探索&#xff1a;从RTMP推流到全功能实战 第一次接触EasyDarwin时&#xff0c;大多数人可能只是把它当作一个简单的RTMP推流工具——上传视频、获取流地址、完成播放&#xff0c;流程看似简单直接。但当我真正深入使用这个开源流媒体服务器后&#x…...

UE5模型加载避坑指南:为什么你的Runtime OBJ导入总是丢失材质?

UE5运行时OBJ材质丢失终极解决方案&#xff1a;从原理到工具函数全解析 当你在UE5中动态加载OBJ模型时&#xff0c;是否遇到过这样的场景&#xff1a;模型虽然成功加载&#xff0c;但所有材质都变成了难看的粉色默认材质&#xff1f;这可能是技术美术和程序化生成领域最常见的痛…...