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())
}
相关推荐
CTO Plus技术服务中9 小时前
一栈式、系统性的C、C++、Go、网络安全、Linux运维开发笔记和面试笔记
c++·web安全·golang
modelmd10 小时前
Go、Java 的值类型和引用类型对比
java·golang
亲爱的非洲野猪10 小时前
如何安全关闭 IIS 的 HTTP 端口
网络·安全·http
资深web全栈开发10 小时前
高并发的本质:超越语言的协作哲学——以 Go HTTP 服务器为例
服务器·http·golang·系统设计·goroutine·高并发架构·go并发
bing.shao10 小时前
Golang 在OPC领域的应用
开发语言·后端·golang
os_lee10 小时前
Milvus 实战教程(Go 版本 + Ollama bge-m3 向量模型)
数据库·golang·milvus
源代码•宸11 小时前
大厂技术岗面试之一面(准备自我介绍、反问)
经验分享·后端·算法·面试·职场和发展·golang·反问
掘根1 天前
【jsonRpc项目】常用的零碎功能接口实现
网络协议·http
ps酷教程1 天前
HttpPostRequestEncoder使用示例
http·netty
源代码•宸1 天前
Golang原理剖析(channel面试与分析)
开发语言·经验分享·后端·面试·golang·select·channel