Golang开发一个简单的HTTP服务

服务端

go 复制代码
package main

import (
	"net/http"

	"zdpgo_chi"
	"zdpgo_chi/middleware"
)

func main() {
	// 创建路由
	r := zdpgo_chi.NewRouter()

	// 使用请求ID中间件
	r.Use(middleware.RequestID)

	// 使用日志中间件
	r.Use(middleware.Logger)

	// 使用自动捕获异常中间件
	r.Use(middleware.Recoverer)

	// 首页路由
	r.Get("/", func(w http.ResponseWriter, r *http.Request) {
		w.Write([]byte("hello world"))
	})

	// 启动服务
	http.ListenAndServe(":3333", r)
}

客户端

go 复制代码
package main

import (
	"fmt"
	"zdpgo_resty"
)

func main() {
	client := zdpgo_resty.New()

	// 发送请求
	resp, err := client.R().EnableTrace().Get("http://127.0.0.1:3333/")
	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Println(resp.String())
}
相关推荐
96245610 小时前
Go EVM 链上数据平台实践:从 RPC Demo 到可演进架构
rpc·架构·golang
银河技术15 小时前
从脚本到 Operator:用 Go 构建可靠的微服务自动扩缩容控制器
开发语言·微服务·golang
flash俊杰1 天前
给工具调用划安全红线:SSRF 防护、逐跳复检与沙箱取舍
http
是2的10次方啊1 天前
超时了,然后呢?——聊聊 HTTP / Dubbo 超时后,客户端、服务端与 C 端用户的真实感受
http·dubbo
尘一不染1 天前
多模型 API 接入实战(一):从一次 HTTP 请求到可维护的适配层
网络·人工智能·网络协议·http
云和数据.ChenGuang2 天前
Golang AI 工程师路线图:从入门到实战
开发语言·人工智能·后端·golang
程序员夏洛2 天前
TCP 是用来解决什么问题?
java·网络协议·http·https
艾莉丝努力练剑2 天前
【AI大模型接入SDK】ChatServer HTTP接口模块实现总览
网络·c++·人工智能·网络协议·学习·http·架构
报错小能手2 天前
内存管理 垃圾回收面试题
golang