# 有三种路由:**固定路由、正则路由、自动路由**
## 固定路由:
* #### 一个固定的路由,一个控制器,然后根据用户请求方法不同请求控制器中对应的方法
* #### `beego.Router("/", &controllers.MainController{})`
* ####` beego.Router("/user", &controllers\_user.UserController{})`
* ####` beego.Router("/hello", &controllers\_user.Hello{})`
#### 然后根据请求的方法,比如get请求,去对应的controller里找对应的方法
## 正则路由:
* #### `beego.Router(“/api/?:id”, &controllers.RController{})`
* #### 默认匹配 //例如对于URL”/api/123”可以匹配成功,此时变量”:id”值为”123”
* #### `beego.Router(“/api/:id”, &controllers.RController{})`
* #### 默认匹配 //例如对于URL”/api/123”可以匹配成功,此时变量”:id”值为”123”,***但URL”/api/“匹配失败***
* #### :id(\[0-9\]+) 或者 :id(\[\\d\]+) 或者 🆔int
* #### :id(\[\\w\]+) 或者 :username:string *\*\* \\需要转义\*\**
* #### 获取:
* #### `this.Ctx.Input.Param(":id")`
* #### `this..GetString(":id")`
####
* #### 正则部分:
* #### . 匹配除换行符以外的任意字符
* #### \\w 匹配字母或数字或下划线 等价于 '\[^A-Za-z0-9\_\]'。
* #### \\d 匹配数字
####
## 自动路由:
* #### 注册路由的时候不需要指定url,只需要注册控制器即可:
* #### beego.AutoRouter(&controllers.UserController{})
* #### 使用的时候得按规则来
* #### /控制器名/方法名/后面的都是参数。。。
* #### /user/get/123/456 会访问UserController下的get方法,两个参数是123,456
* #### TestUserController -- \> testuser
## **自定义路由**:
* #### 注册路由的时候可以指定第三个参数,这个参数就是用来自定义路由的
* #### 用法: method :函数名
* #### post:Login post请求的时候访问Login函数
* #### get:User get请求的时候访问User函数
* #### \*:LoginOut 所有的请求方法都访问LoginOut函数
* #### put:UpdateFile put请求的时候访问UpdateFile函数
* #### get,post:Login get和post请求的时候访问Login函数
* #### 可用的 HTTP Method:
#### \*: 包含以下所有的函数
#### get: GET 请求
#### post: POST 请求
#### put: PUT 请求
#### delete: DELETE 请求
#### patch: PATCH 请求
#### options: OPTIONS 请求
#### head: HEAD 请求
## beego路由用法举例:
* #### 默认的get请求对应Get方法,post请求对应Post方法
* #### beego.Router("/", &controllers.MainController{})
* #### 给请求指定自定义方法,默认方法将失效
* #### beego.Router("/login", &controllers.MyController{}, "get:Login;post:Register")
* #### 多个请求访问一个方法
* #### beego.Router("/getandpost", &controllers.MyController{}, "get,post:Login")
* #### 所有请求访问一个方法
* #### beego.Router("/all", &controllers.MyController{}, "\*:Login")
- go环境搭建
- 解决go get网络慢的问题
- beego的安装
- bee的安装
- 编辑器
- go module
- 配置文件详解
- 配置文件其他说明
- 路由方法
- 路由
- 数据校验
- 校验函数
- 页面跳转
- 获取前端数据
- json文件的获取
- xsrf的用法
- xsrf的防护
- srfs和json的搭配
- flash的用法
- 过滤器
- url反转
- 各类数据的处理
- 模板函数
- 内置模板函数
- 自定义模板函数
- 模板
- 模板处理
- 模板渲染
- 视图文件的处理
- 静态文件
- 请求方式判断
- 验证码
- 另一种方法
- 分页类
- session
- 登录判断
- orm模块
- 使用方法
- mysql的安装
- 安装orm及驱动
- 建立模型
- 自定义模型
- 增删改查
- 高级查询
- 常见问题汇总
- 代码收藏
- 打包部署
- go build打包
- utils收藏
- 新goer容易犯的错
- 字符串操作