想学 Go Web?先来看看如何搭建一个 beego 项目吧
想学 Go Web?先来看看如何搭建一个 beego 项目吧
一、下载安装 bee 和 beego
我们先去 Github 下载 bee 和 beego。
我们可以使用 go get 来下载:
下载完之后,进入 bee 的目录下,打开当前目录的命令行窗口,使用 go build 进行编译。
然后在命令行运行 bee.exe 即可。
二、新建一个 beego 项目
新建一个 Go Web 项目,需要我们使用 bee 来新建,只需要在命令行执行 bee new [name]即可
我们这里新建一个项目时需要注意,这个新建项目的命令需要在 GOPATH 的 src 目录之下才能执行成功。
三、安装依赖
然后我们发现有个 go.mod 文件里面有两个依赖需要安装,我们在终端输入go tidy
即可
四、运行项目
然后输入D:\Go\bin\src\github.com\beego\bee\bee run
运行项目。
访问 http://localhost:8080
我们可以发现运行成功!
下面简单搭建实现几个小功能吧!
五、正则路由
我们先来介绍一下 beego 的正则路由。
在 routers 里面放置路由文件。
我们在 router.go 里面写入以下代码:
beego.Router 是路由器向 BeeApp 添加了一个模式化的 controller 处理程序。
第一条路由是根路径时访问 controllers 中的 MainController,注意需要使用 controller 的指针。
第二条路由是访问类似 http://localhost:8080/api/JKJJ,JKJJ 便是 username 参数,我们可以在 controller 中获取这个参数。
使用 this.Ctx.Input.Param(":username")即可,Param 通过给定的键返回路由器参数。然后再使用 this.Ctx.WriteString("username = " + username)往页面中写入内容。
我们来看一看能否成功访问。
看来是可以的!
六、使用 Cooike
我们在 Web 项目中有时会用到 Cooike,现在我们就来了解如何 beego 项目中使用 Cooike,我们先创建一个 Cooike 的 controller:
然后如果我们想访问的话,必须将他这个控制器添加到路由中,于是我们在 Router 中加入这样一行:
然后运行项目,访问/cooike 路径,我们可以看到:
如果没看到 ReganYue,可以刷新几次,或者清空 Cooikes 再次访问。
接下来我们来仔细介绍一下这个设置 Cooike 和获取 Cooike 的函数。
第一个参数是 Cooike 的名字,第二个参数是 Cooike 的值。而第三个参数被用于设置 Cooike 的最大存活时间(max age time), Cooike 的设置路径(path), 指定 Cooike 的域名(domain), secure and httponly.如果 Cooike 的 secure 的参数是 true,那么这个 Cooike 就只能通过 https 传送给服务器,是不可以用 http 协议发生的。如果这里的 Cooike 设置为 HttpOnly=true,那么就不会让 js 获取,不能用 document.cookie 输出 Cooike 的值。
这个是用于获取 Cooike 的值,只有一个参数,那就是 Cooike 的键名。
版权声明: 本文为 InfoQ 作者【Regan Yue】的原创文章。
原文链接:【http://xie.infoq.cn/article/39f3df2ac84f28c950ade79c9】。文章转载请联系作者。
评论