【Golang】Echo框架学习(二)中间件的使用

Echo 框架中,中间件是用于处理请求和响应的函数,它们可以在请求到达路由处理函数之前或响应发送给客户端之前对请求进行处理。

一、最简单的中间件使用举例

中间件的典型用途包括:日志记录、身份验证、请求体解析、跨域资源共享(CORS)等。

以下是一个简单的例子,演示了如何在 Echo 框架中使用中间件来记录每次请求的日志:

代码样例

package main

import (
	"fmt"
	"net/http"

	"github.com/labstack/echo/v4"
)

// 自定义中间件:打印请求的路径
func logMiddleware(next echo.HandlerFunc) echo.HandlerFunc {
	return func(c echo.Context) error {
		// 获取请求的路径
		fmt.Println("Request Path:", c.Request().URL.Path)
		// 调用下一个处理函数
		return next(c)
	}
}

func main() {
	// 创建一个新的 Echo 实例
	e := echo.New()

	// 使用中间件:logMiddleware
	e.Use(logMiddleware)

	// 路由:处理根路径请求
	e.GET("/", func(c echo.Context) error {
		return c.String(http.StatusOK, "Hello, Echo!")
	})

	// 启动服务器
	e.Start(":8080")
}

 curl在本地发起两个请求

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值