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())
}
相关推荐
大嘴皮猴儿14 小时前
从零开始学商品图翻译:小白也能快速掌握的多语言文字处理与上架技巧
大数据·ide·人工智能·macos·新媒体运营·xcode·自动翻译
孙同学_14 小时前
【项目篇】高并发服务器 - HTTP服务器组件拆解,从Util到HttpServer
运维·服务器·http
XMYX-014 小时前
17 - Go 通道 Channel 底层原理 + 实战详解
开发语言·golang
SilentSamsara15 小时前
HTTP/1.1 到 HTTP/3:每代协议解决了什么问题
网络·网络协议·tcp/ip·http·https
renhongxia120 小时前
网络效应与大型语言模型辩论中的协议漂移
大数据·人工智能·机器学习·语言模型·自然语言处理·语音识别·xcode
SilentSamsara1 天前
TLS/HTTPS 实战:证书链、握手与生产配置
网络·数据库·网络协议·http·https
Tomhex1 天前
Go调用C代码的场景与实践
golang
黑牛儿1 天前
Swoole协程 vs Go协程:PHP开发者一看就懂的实战对比
后端·golang·php·swoole
Wenweno0o1 天前
Eino-Document 组件使用指南
golang·大模型·智能体·eino
学代码的真由酱1 天前
HTTPS
网络协议·http·https