# README

## 说明

**Github地址(欢迎star):** [**https://github.com/step-by-step-wiki/GoBook**](https://github.com/step-by-step-wiki/GoBook)

**Gitbook在线版:** [**为你自己学Go**](https://go.sai.show)

**另外还有一本Gitbook, 是Go的学习,** [**为你自己学Redis**](https://redis.sai.show)**, 欢迎学习和star🌟**

## About me

**Url**: [**https://sai.show/about**](https://sai.show/about)

## Highlights

目前在跟邓明老师学习，每次学习完，都会进行大量练习，然后把老师讲的，和自己整理的（包含自己的截图、自己画的流程截图）写下来，因为自己也在转Go语言开发，把Go做为职业生涯的第二语言，我想着通过一个学习者的方式去形成一本书，这本书为你自己而学，为自己多一条选择而学，所以书名命为【为你自己学Go】，希望能对学习Go的大家有所帮助～

在做一件有意义的事情，文章会一直更新，直到结束

![Web框架概览](https://1407465062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyoSgzgsmuneFp7VNWUbE%2Fuploads%2Fgit-blob-d95d63d4b4097728adb4c67da4357626c76ef531%2FWeb%E6%A1%86%E6%9E%B6%E6%A6%82%E8%A7%88.png?alt=media)

代码在[code](https://github.com/step-by-step-wiki/GoBook/blob/main/code/README.md)目录下

文章按章节如下：

* Web框架之 Server与路由树
  * PART01.Web框架概览
    * [01.Web框架概览-学习路线](https://go.sai.show/part01.web-kuang-jia-gai-lan/1.01-web-kuang-jia-gai-lan-xue-xi-lu-xian)
    * [02.Web框架概览-Beego框架分析](https://go.sai.show/part01.web-kuang-jia-gai-lan/1.02-web-kuang-jia-gai-lan-beego-kuang-jia-fen-xi)
    * [03.Web框架概览-GIN框架分析](https://go.sai.show/part01.web-kuang-jia-gai-lan/1.03-web-kuang-jia-gai-lan-gin-kuang-jia-fen-xi)
    * [04.Web框架概览-Iris框架分析](https://go.sai.show/part01.web-kuang-jia-gai-lan/1.04-web-kuang-jia-gai-lan-iris-kuang-jia-fen-xi)
    * [05.Web框架概览-Echo框架分析](https://go.sai.show/part01.web-kuang-jia-gai-lan/1.05-web-kuang-jia-gai-lan-echo-kuang-jia-fen-xi)
  * PART02.Server
    * [01.Server详解与面试要点](https://go.sai.show/part02.server/2.01-server-xiang-jie-yu-mian-shi-yao-dian)
  * PART03.路由树
    * [01.路由树-Beego\&GIN\&Echo实现与设计总结](https://go.sai.show/part03.-lu-you-shu/3.01-lu-you-shu-beegoginecho-shi-xian-yu-she-ji-zong-jie)
    * [02.路由树-全静态匹配](https://go.sai.show/part03.-lu-you-shu/3.02-lu-you-shu-quan-jing-tai-pi-pei)
    * [03.路由树-TDD起步](https://go.sai.show/part03.-lu-you-shu/3.03-lu-you-shu-tdd-qi-bu)
    * [04.路由树-静态匹配测试用例](https://go.sai.show/part03.-lu-you-shu/3.04-lu-you-shu-jing-tai-pi-pei-ce-shi-yong-li)
    * [05.路由树-静态匹配之路由查找](https://go.sai.show/part03.-lu-you-shu/3.05-lu-you-shu-jing-tai-pi-pei-zhi-lu-you-cha-zhao)
    * [06.路由树-静态匹配之集成Server](https://go.sai.show/part03.-lu-you-shu/3.06-lu-you-shu-jing-tai-pi-pei-zhi-ji-cheng-server)
    * [07.路由树-通配符匹配之路由注册](https://go.sai.show/part03.-lu-you-shu/3.07-lu-you-shu-tong-pei-fu-pi-pei-zhi-lu-you-zhu-ce)
    * [08.路由树-通配符匹配之路由查找与测试](https://go.sai.show/part03.-lu-you-shu/3.08-lu-you-shu-tong-pei-fu-pi-pei-zhi-lu-you-cha-zhao-yu-ce-shi)
    * [09.路由树-参数路径之基本注册和查找](https://go.sai.show/part03.-lu-you-shu/3.09-lu-you-shu-can-shu-lu-jing-zhi-ji-ben-zhu-ce-he-cha-zhao)
    * [10.路由树-参数路径之校验](https://go.sai.show/part03.-lu-you-shu/3.10-lu-you-shu-can-shu-lu-jing-zhi-jiao-yan)
    * [11.路由树-参数路径之参数值](https://go.sai.show/part03.-lu-you-shu/3.11-lu-you-shu-can-shu-lu-jing-zhi-can-shu-zhi)
    * [12.路由树-总结与面试要点](https://go.sai.show/part03.-lu-you-shu/3.12-lu-you-shu-zong-jie-yu-mian-shi-yao-dian)
  * PART04.课后复习
    * [01.课后复习-Server](https://go.sai.show/part04.-ke-hou-fu-xi/4.01-ke-hou-fu-xi-server)
    * [02.课后复习-Route](https://go.sai.show/part04.-ke-hou-fu-xi/4.02-ke-hou-fu-xi-route)
* Web框架之Context与AOP方案
  * PART05.Context
    * [01.Context-简介](https://go.sai.show/part05.context/5.01-context-jian-jie)
    * [02.Context-Beego-Context设计分析](https://go.sai.show/part05.context/5.02-contextbeegocontext-she-ji-fen-xi)
    * [03.Context-Gin-Context设计分析](https://go.sai.show/part05.context/5.03-contextgincontext-she-ji-fen-xi)
    * [04.Context-Echo和Iris的Context设计分析](https://go.sai.show/part05.context/5.04-contextecho-he-iris-de-context-she-ji-fen-xi)
    * [05.Context-处理输入输出总结](https://go.sai.show/part05.context/5.05-context-chu-li-shu-ru-shu-chu-zong-jie)
    * [06.Context-处理输入之Body输入](https://go.sai.show/part05.context/5.06-context-chu-li-shu-ru-zhi-body-shu-ru)
    * [07.Context-处理输入之表单输入](https://go.sai.show/part05.context/5.07-context-chu-li-shu-ru-zhi-biao-dan-shu-ru)
    * [08.Context-处理输入之查询参数、路径参数和StringValue](https://go.sai.show/part05.context/5.08-context-chu-li-shu-ru-zhi-cha-xun-can-shu-lu-jing-can-shu-he-stringvalue)
    * [09.Context-处理输出](https://go.sai.show/part05.context/5.09-context-chu-li-shu-chu)
    * [10.Context-总结与面试要点](https://go.sai.show/part05.context/5.10-context-zong-jie-yu-mian-shi-yao-dian)
  * PART06.AOP
    * [01.AOP简介与不同框架设计概览](https://go.sai.show/part06.aop/6.01-aop-jian-jie-yu-bu-tong-kuang-jia-she-ji-gai-lan)
    * [02.AOP设计方案-Middleware](https://go.sai.show/part06.aop/6.02-aop-she-ji-fang-an-middleware)
  * PART07.Middleware
    * [01.Middleware-AccessLog](https://go.sai.show/part07.middleware/7.01-middleware-accesslog)
    * [02.Middleware-Trace简介和OpenTelemetry](https://go.sai.show/part07.middleware/7.02-middlewaretrace-jian-jie-he-opentelemetry)
    * [03.Middleware-OpenTelemetry测试](https://go.sai.show/part07.middleware/7.03-middlewareopentelemetry-ce-shi)
    * [04.Middleware-OpenTelemetry总结](https://go.sai.show/part07.middleware/7.04-middlewareopentelemetry-zong-jie)
    * [05.Prometheus详解](https://go.sai.show/part07.middleware/7.05-prometheus-xiang-jie)
    * [06.Middleware-Prometheus](https://go.sai.show/part07.middleware/7.06-middleware-prometheus)
    * [07.Middleware-错误页面](https://go.sai.show/part07.middleware/7.07-middleware-cuo-wu-ye-mian)
    * [08.Middleware-从panic中恢复](https://go.sai.show/part07.middleware/7.08-middleware-cong-panic-zhong-hui-fu)
    * [09.Middleware总结和面试](https://go.sai.show/part07.middleware/7.09-middleware-zong-jie-he-mian-shi)
  * PART08.Review
    * [01.课后复习-AOP](https://go.sai.show/part08.review/8.01-ke-hou-fu-xi-aop)
    * [02.课后复习-Context](https://go.sai.show/part08.review/8.02-ke-hou-fu-xi-context)
    * [03.课后复习-Middleware-AccessLog](https://go.sai.show/part08.review/8.03-ke-hou-fu-xi-middlewareaccesslog)
  * PART09.Appendix
    * [01附录.责任链模式](https://go.sai.show/part09.appendix/01-fu-lu-.-ze-ren-lian-mo-shi)
    * [02附录.生成器模式](https://go.sai.show/part09.appendix/02-fu-lu-.-sheng-cheng-qi-mo-shi)
    * [03附录.函数选项模式](https://go.sai.show/part09.appendix/03-fu-lu-.-han-shu-xuan-xiang-mo-shi)
  * 好用的小程序(欢迎体验呀)
    * [01.去抖音水印](https://go.sai.show/xiaochengxu/01.qushuiyin)
    * [02.密码管理](https://go.sai.show/xiaochengxu/02.password)

## 如果可以，请关注我的公众号

绝不打扰，如果您关注我了，后期等我运营好了，一定给关注我的你们发福利😊

![公众号](https://oss.laf.run/v8w6wa-keepass/images/gongzhonghao.jpg)

## 赞助

如果你觉得这个项目对你有帮助，请给我点个Star。并且情况允许的话，可以给我一点点支持，总之非常感谢支持～

![微信](https://1407465062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyoSgzgsmuneFp7VNWUbE%2Fuploads%2Fgit-blob-33879b15e0c80184d9eda29f027947cb3268e9ba%2Fwechat.jpg?alt=media)

WeChat Pay

![支付宝](https://1407465062-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyoSgzgsmuneFp7VNWUbE%2Fuploads%2Fgit-blob-dbb99af7ddb621ccc7e608bc22452d518cf83cc8%2Falipay.jpg?alt=media)

Alipay


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://go.sai.show/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
