一些 Go Web 开发笔记

主要观点:作者在过去几周用 Go 开发网站,过程中学到一些东西并记录下来,包括 Go 1.22 的更好路由、内置路由器的一个陷阱、sqlc 自动生成数据库查询代码、sqlite 技巧、Go 1.19 的 GC 内存限制设置以及喜欢用 Go 做网站的原因等,同时也提到一些尚未解决的问题。
关键信息:

  • Go 1.22 有更好的路由支持,可改写路由代码。
  • 内置路由器在处理带 trailing slashes 的请求时会重定向,可能导致 POST 请求问题。
  • sqlc 可将 SQL 查询编译为 Go 代码,方便查询编写。
  • sqlite 优化技巧,如设置专用写对象、分开读写数据库对象等。
  • Go 1.19 引入设置 GC 内存限制的方法。
  • 喜欢用 Go 做网站的原因,如静态二进制文件、内置服务器、工具链易安装等。
  • 尚未解决的问题,如渲染 HTML 模板、实现登录系统和 CSRF 等。
    重要细节:
  • 示例代码展示了手动路由和新的路由方式。
  • 提到 Xe Iaso 的博客文章用于解决内置路由器的问题。
  • 给出 sqlc 生成代码的具体示例。
  • 说明在 Go 中设置 GC 内存限制的方式。
  • 对比了用 Go 和 Rails 做网站的不同体验。
阅读 11
0 条评论