活学活用 gin 框架
文章平均质量分 56
路多辛
分享编程知识与经验
展开
-
Golang gin 框架在中间件中获取请求和响应的各种数据
为 gin 框架做不同用途的中间件时一般都需要获取到请求体和响应体的一些数据,例如做签名插件需要获取到请求参数、请求内容和 header,做鉴权插件需要获取到 header 的某些值,做日志插件需要的数据就更多了。获取请求体 body 和响应体 body 稍微有一点难度,获取响应体 body 的方法及原理可以参考之前的文章。《获取 Gin 框架在中间件中获取 response body 的方法》,本文中获取请求体 body 还有更高性能的方式,敬请期待接下来的文章。原创 2023-02-09 22:54:32 · 3399 阅读 · 1 评论 -
Golang gin 框架中间件(middleware)实现原理详解
做开发的特别是做后端开发的相信对中间件这个词肯定是很熟悉了,中间件的概念还是比较宽泛的,即使在后端开发领域,也有很多不同的含义。在web框架层面,程序运行到某个阶段自动执行预设的函数,运行完后再回到跳出的那个阶段继续执行原函数。具体到 gin 框架,官方的说法是传入的HTTP请求可以由中间件链和最终操作来处理。可以理解为中间件是一种过滤路由的机制,也就是http请求来到时先经过中间件,再到具体的处理函数,传入的 HTTP 请求可以由一系列中间件和最终操作来处理,可以在中间件中实现前置和后置处理逻辑。原创 2023-01-10 22:30:49 · 1494 阅读 · 0 评论 -
Gin 框架在 middleware 中获取 response body 的方法
在写一个Gin框架日志中间件的时候,需要记录请求和响应相关的一些数据,例如请求参数、请求方法、请求时间、请求头、耗时、响应状态码、响应数据等,gin为获取这些数据基本都提供了现成的方法,但是获取响应数据还是有一定难度和复杂度的。那么,该如何获取响应数据也就是 response body 呢?先上代码。原创 2023-01-09 22:12:09 · 1800 阅读 · 0 评论