示例三:一键自动生成通用web服务(gin)项目代码,开发效率至少提升1倍

zhufuyi · · 1374 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

生成CRUD的api接口代码工具都比较成熟了,CRUD代码都是标准化固定化的,对于任意自定义的api接口代码,应该不少开发者还是手工编写,这些不是标准化接口代码,应该如何生成呢? 这里的解决方案是使用protobuf协议来描述api接口,通过自定义插件 [protoc-gen-go-gin](https://github.com/zhufuyi/sponge/tree/main/cmd/protoc-gen-go-gin) 生成web服务的任意api接口代码。 ### 依赖工具 - 准备proto文件 [user.proto](https://github.com/zhufuyi/sponge_examples/blob/main/3_web-gin-protobuf/api/user/v1/user.proto)。 - 安装工具 [sponge](https://github.com/zhufuyi/sponge/blob/main/assets/install-cn.md)。 安装完工具sponge后,执行命令打开UI界面: ```bash sponge run ``` <br> ### 快速创建web项目 进入sponge的UI界面,点击左边菜单栏【Protobuf】-->【创建web项目】,填写一些参数生成web服务项目代码 。 ![web-http-pb.png](https://static.golangjob.cn/231108/f0116ae2efd0470bcf92296a617b5689.png) web框架使用 [gin](https://github.com/gin-gonic/gin),还包含了swagger文档、常用的服务治理功能代码,构建部署脚本等,使用什么数据库由使用者选择。 切换到web目录,执行命令: ```bash # 生成代码 make proto # 打开internal/handler/user.go代码文件,根据生成的模板代码填写具体逻辑代码。 # 编译和启动服务 make run ``` 在浏览器打开 [http://localhost:8080/apis/swagger/index.html](http://localhost:8080/apis/swagger/index.html) 就可以测试api接口了。 ![web-http-pb-swagger.png](https://static.golangjob.cn/231108/c5f0ec790a515553dad4dec30109693c.png) <br> **这是根据上面步骤生成的通用web服务代码** [https://github.com/zhufuyi/sponge_examples/tree/main/3_web-gin-protobuf](https://github.com/zhufuyi/sponge_examples/tree/main/3_web-gin-protobuf) **在生成的通用web服务代码上可以`自动添加CRUD api接口`、`人工添加自定义api接口`,请查看详细的开发通用web服务文档** [https://go-sponge.com/zh-cn/web-development-protobuf](https://go-sponge.com/zh-cn/web-development-protobuf) <br> <br>

有疑问加站长微信联系(非本文作者))

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1374 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传