> # 路由
[TOC]
<br/>
* 让URL更规范以及优雅;
* 路由中间件支持;
* 目前fastSwoole支持默认的pathinfo路由和自定义路由。
<br/>
## **一、pathinfo路由**
pathinfo默认路由格式,模块/控制器/方法,例如访问`http://wervername/index/index/test`对应的就是index模块下Index控制的index方法,对应框架方法`application\index\controller\Index.php->function index()`
<br/>
## **二、自定义路由**
> route目录下的route.php是路由定义文件,请把所有自定义路由写在这个文件。
>
路由定义方法是:
```
'intro' => ["index/index/intro", "GET|POST","\App\Http\middleware\Check"],
```
> 定义的路由,第一个参数是pathinfo,第二个参数是请求方法,例如GET或者POST,多个方法用|符号分割,例如GET|POST,如果不限制请求方法就写*,第三个可选参数是中间件,详情看中间件文档。
例如注册如下路由规则:
```
return [
//注册路由到index模块的News控制器的read方法且中间件是Check
'new/read' => ["index/news/read","GET|POST","\App\Http\middleware\Check"],
];
```
我们访问:
`http://serverName/new/read
`
会自动路由到:
`http://serverName/index/news/read`
此路由只接受GET和POST请求,且在请求到达控制器之前会先执行Check中间件。
<br/>