这似乎是一个愚蠢的问题,但我会承担风险。我正在Yii2中构建一个RESTful API,我真的不明白:
为什么我们在VerbFilter中声明方法时需要包含UrlRules。我知道你可以添加模式来识别和正确解析路由,这就是为什么我们应该使用UrlRule,但这让我接下来的问题。
为什么我们在使用UrlRule过滤请求时需要VerbFilter?
基本上,我想知道为什么我们要仔细检查请求方法(在VerbFilter和UrlRule中)是否已经在UrlRule中过滤了?
答案 0 :(得分:0)
据我所知,你通常不会同时宣布两者。
UrlRule
路由不匹配时,它会为您提供状态404 。VerbFilter
不匹配时,不执行任何操作。可是:
UrlRule
路由匹配但指定的方法不时,它会为您提供状态404 。VerbFilter
但指定的方法不是,它会为您提供状态405 。