golang

Vue + golang embed 实现前后端不分离部署

需求说明:

用户希望我们能提供一个在本地运行的”web+后端“的二进制程序,但是在本地肯定希望运行越简单越好,如果把前端代码放到nginx,增加了用户的操作复杂度。但是如果通过tmpl的方式书写前后端不分离项目,对开发人员又不是很友好。

那怎样才能让开发人员在书写代码的时候,依然和前后端分离项目一样书写代码,但在用户端只需要运行一个二进制程序呢?通过搜索,发现embed 能帮助我们实现该功能,下面是我们的项目说明。

1.准备一个vue cli相关的项目

我项目地址为:https://gitee.com/vita__chaochao/vue-embed-demo

前端项目完成后,执行yarn build 生成静态文件

2.golang 后端项目说明

我项目地址为:https://gitee.com/vita__chaochao/golang-embed-demo

2.1把vue的静态文件放到golang项目中,并写好html.go文件

2.2修改下index.html中内容

2.3路由配置

2.4本地运行测试

只运行后端

通过后端8877端口访问

测试成功后,直接go build编译go程序即可,编译好后直接运行go程序,通过go的运行端口访问即可。

留言

您的邮箱地址不会被公开。 必填项已用 * 标注

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。