路由

    通过配置注入形式,实现非常灵活的配置,你甚至可以自己另外实现路由中间件,而不用被框架自带的中间件所影响,用哪些中间件都在你的掌控之中!

    注释目标:类

    表明一个类是控制器类

    指定路由规则

    属性名称 说明
    url 请求地址规则。
    /开头则忽视@Controller中的prefix
    支持代入{name}形式占位符,匹配出来的值可以作为参数传入动作
    method 如果设置了method,则请求方法必须在method列表中才可以进到动作。
    支持字符串和数组。如:或{"GET", "POST"}
    domain 判断域名,只有符合条件才允许访问。
    支持字符串和数组,支持{name}形式占位符,可以作为参数传入动作
    paramsGet 判断GET参数,只有符合条件才允许访问。
    可以是字符串或数组。
    id=100必须包含id,并且值为100
    id!=100id<>100必须包含id,并且值不为100
    必须包含id参数
    !id必须不包含id参数
    ["id" => "\d+"]支持正则
    paramsPost 判断POST参数,用法同paramsGet
    header 判断请求头,用法同paramsGet
    requestMime 请求的mime类型判断
    判断请求头中的Content-Type中是否包含这些mime类型之一
    支持字符串和字符串数组

    注释目标:方法

    表明一个方法是动作


    如下代码所示,一个最简单的控制器+路由注解代码。

    访问地址:http://localhost:{port}/
    输出内容:

    路由配置必须写在服务器配置文件中,如果你写在项目配置文件是无效的。