Go 实现简单的请求路由和中间件框架

本文介绍了如何在Go中实现简单的请求路由和中间件。通过使用http标准库和自定义路由器组件,展示了如何处理请求路由。同时,文章讨论了中间件的概念,用于分离业务代码和非业务代码,例如日志记录和请求处理。文中还提供了如何优雅地实现中间件的包装和链式调用方式。
摘要由CSDN通过智能技术生成

go 中区分函数和方法,方法依附于对象,需要先创建对象,才能调用对象的方法;而函数是包级的,只要是公开的,那么通过包就可以访问。go 中定义新的类型有两种方式,类型别名和结构体:

// 类型别名
type Integer int
type Integer1 = int

// 结构体
type User struct {
   
    Name string
    Age  int
}

此外,类型别名不仅可以用在现有类型上,也可以用在方法上:

type Middleware func(handler http.Handler) http.Handler
请求路由

在 Web 框架中,router 是必备的组件,go 的 http 标准库为我们提供了 DefaultServeMux 来处理简单的路由,因此用 go 起步写一个简单的 web 服务是很容易的一件事情:

package main
import (
	"log"
	"net/http"
)

func init() {
   
	http.HandleFunc("/", func(writer http.ResponseWriter, request *http.Request) {
   
		// handle request
	})
}

func main() 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值