beego学习笔记-安装和运行beego
1、安装beego
安装过程可以参考文档beego安装
由于国内go get速度比较慢,可以开启代理:
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
- 安装beego
go get github.com/astaxie/beego
- 安装bee
go get github.com/beego/bee
查看bee version
D:\GOLANG_PROJECT>bee version
______
| ___ \
| |_/ / ___ ___
| ___ \ / _ \ / _ \
| |_/ /| __/| __/
\____/ \___| \___| v1.12.0
├── Beego : 1.12.2
├── GoVersion : go1.16.4
├── GOOS : windows
├── GOARCH : amd64
├── NumCPU : 4
├── GOPATH : D:\Program_Files\go1.16.4.windows-amd64\gopath
├── GOROOT : D:\Program_Files\go1.16.4.windows-amd64\go
├── Compiler : gc
└── Date : Tuesday, 28 Dec 2021
D:\GOLANG_PROJECT>
2、创建beego项目
D:\GOLANG_PROJECT>bee new BeegoDemo1
2021/12/28 22:31:36 INFO ▶ 0001 generate new project support go modules.
2021/12/28 22:31:36 INFO ▶ 0002 Creating application...
create D:\GOLANG_PROJECT\BeegoDemo1\go.mod
create D:\GOLANG_PROJECT\BeegoDemo1\
create D:\GOLANG_PROJECT\BeegoDemo1\conf\
create D:\GOLANG_PROJECT\BeegoDemo1\controllers\
create D:\GOLANG_PROJECT\BeegoDemo1\models\
create D:\GOLANG_PROJECT\BeegoDemo1\routers\
create D:\GOLANG_PROJECT\BeegoDemo1\tests\
create D:\GOLANG_PROJECT\BeegoDemo1\static\
create D:\GOLANG_PROJECT\BeegoDemo1\static\js\
create D:\GOLANG_PROJECT\BeegoDemo1\static\css\
create D:\GOLANG_PROJECT\BeegoDemo1\static\img\
create D:\GOLANG_PROJECT\BeegoDemo1\views\
create D:\GOLANG_PROJECT\BeegoDemo1\conf\app.conf
create D:\GOLANG_PROJECT\BeegoDemo1\controllers\default.go
create D:\GOLANG_PROJECT\BeegoDemo1\views\index.tpl
create D:\GOLANG_PROJECT\BeegoDemo1\routers\router.go
create D:\GOLANG_PROJECT\BeegoDemo1\tests\default_test.go
create D:\GOLANG_PROJECT\BeegoDemo1\main.go
2021/12/28 22:31:37 SUCCESS ▶ 0003 New application successfully created!
3、运行beego
(1)将新建的BeegoDemo1,导入到GOLAND中
(2)配置go modules和go proxy,配置方法见:GOLAND中配置GOMODULE和GOPROXY
直接点击运行或通过bee run来运行:
4、路由设置
在beego框架中,支持四种路由设置,他们分别是:基础路由,固定路由,正则路由和自动路由。
-
1、基础路由:
直接通过beego.Get,beego.POST,beego.Head,beego.Delete等方法来进行路由的映射,我们通过代码给大家来进行演示。我们知道,常见的http请求方法操作有:GET,HEAD,PUT,POST,DELETE,OPTIONS等。
1.首先是基础的GET路由。下面我们通过一个例子来向大家进行展示。beego.GET("",func)
2.基础的POSt路由:beego.POST("",func)
3.除此之外,还支持Patch,Head,Delete等基础路由。
以上这种请求和对应找到请求方法类型的方式就是RESTful形式,我们最常用的也是RESTful形式
RESTful是目前开发API中非常常用的一种形式,其实就是RESTful形式就是用户是get请求时就自动执行Get方法,Post请求就执行Post方法。
-
2、固定路由:
诸如以下此种代码形式:beego.Router("/",controller);
Get请求就会对应到Get方法,Post就会对应到Post方法,Delete就会对应到Delete方法,Header方法就会对应Header方法。
-
3、正则路由:
正则路由是指可以在进行固定路由的基础上,支持匹配一定格式的正则表达式。比如:id,:username,自定义正则,file的路径和后缀切换以及全匹配等操作。 -
4、自定义路由
上面两种路由都是默认的根据请求的类型,Get就执行Get方法,Post执行Post方法,比较局限。因为在开发的时候大部分都是使用固定匹配想要直接执行对应的逻辑控制方法,因此beego提供给我们了可以自定义的自定义路由配置。方式如下:
beego.Router("/",&IndexController{},"")
可以用的HTTP Method:
- "*":包含以下所有的函数
- "get":GET 请求
- "post":POST 请求
- "put":PUT 请求
- "delete":DELETE 请求
- "patch":PATCH 请求
- "options":OPTIONS 请求
- "head":HEAD 请求
上面这些对应的请求方法,在beego.Controller中,定义了很多的方法,比如Init,Prepare,Post,Get,Head,Delete等方法。以上分析的是beego框架的Router以及Controller运行逻辑。
实例:https://gitee.com/cosmoswong/BeegoRouteDemo
实例项目:
(1)个人博客:https://gitee.com/cosmoswong/BlogProject.git
(2)任务列表:https://gitee.com/cosmoswong/ToDoListProject.git
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程