gin-vue-admin的路由方式

摘要:当关于gin框架的项目逻辑复杂时,需要更清晰化的路由和api管理;记录gin-vue-admin项目的路由划分学习,当自己编码时希望能够变成自己的经验

Read more

从“洋葱”到“函数链”:彻底搞懂Gin中间件的核心实现

引言:在Web开发中,“中间件”是一个无处不在的核心概念。它像一道道安全门,优雅地处理着日志、认证、CORS等通用逻辑。本文将通过生动的“洋葱模型”比喻,带你理解中间件的设计哲学,并深入剖析Go语言中最流行的Web框架Gin是如何通过精巧的“函数链”机制来实现这一强大功能的。

Read more

Go语言的“装箱”——你看不到的隐式转换

Go语言的“装箱”(Boxing)机制,就是当一个具体类型(Concrete Type)的值被转换成接口类型(Interface Type)时发生的隐式转换过程。

引言

你每天都在使用fmt.Println(),但你知道每次调用它时,Go都在幕后为你做了什么吗?你是否遇到过一个非nilerror变量,其内部却是一个nil指针的“陷阱”?这些问题的答案都指向同一个核心概念:装箱(Boxing)。本文将带你深入理解Go语言中这个重要但常常被忽略的隐式转换机制。

Read more

switch和select

switchselect在语法上看起来很相似,但它们是为解决完全不同的问题而设计的。

简单来说:

  • switch值(Value) 的选择。
  • select通道(Channel) 的选择。
Read more

cookie_and_session

标准 Session 工作流程

  1. 客户端首次请求 (Client’s First Request)
    • 用户通过浏览器第一次访问服务器。
Read more

数据库-简单操作步骤学习01

问题:为什么改和增加需要先prepare,然后根据返回的stmt状态在exec中传参,而查询就直接用了数据库的指针进行query呢

Read more

驱动导入

问题_ “github.com/go-sql-driver/mysql”,前面的_有什么用

你问到了 Go 语言中一个非常独特且重要的语法特性!

import 语句前面的 _ (下划线,也叫空白标识符 Blank Identifier) 的作用是:

执行该包的初始化代码,但是不直接使用该包中的任何导出函数或变量。

Read more

初学go_web记录1

问题1:r.ParseForm() 不是有这个才能读取到请求头里面的东西吗,怎么login里面开始就读取了r.method

你提出了一个非常好的问题,这能帮助我们更精确地区分 http.Request 对象中不同部分的访问方式。

Read more

初学flag包

flag 包是 Go 语言标准库中处理命令行参数的利器。学会它,你就能轻松地为你编写的命令行工具添加 -h-version 等专业的参数功能。

Read more

初学bufio包

第一阶段:理解核心思想 —— 为什么要用 bufio

在直接看代码之前,你必须先理解 bufio 存在的根本原因减少系统调用,提升 I/O 性能

Read more