2016-12-02 1 views
1

これはちょっとした疑問のように思えるかもしれませんが、私は危険を冒すつもりです。私はYii2でのRESTful APIを構築していると私は本当に理解していない:私たちはVerbFilterでメソッドを宣言することができたときにYii2 UrlRuleとVerbFilterシャワーの考え

  • はなぜUrlRulesを含める必要があります。ルートを認識して正しく解析するためのパターンを追加できることを理解しています。そのため、UrlRuleを使用する必要がありますが、これが次の質問につながります。

  • なぜリクエストがすでにUrlRuleを使用してフィルタリングされている場合、VerbFilterが必要なのでしょうか?

基本的に、私は、なぜ我々はそれがすでにのurlruleでフィルタリングいた場合(両方VerbFilterとのurlruleに)要求メソッドを再確認くださいあるだろうか?

答えて

0

あなたが知っている限り、通常は両方を同時に宣言しません。ルートはそれはあなたのステータス404を与えるUrlRuleによってにマッチしていない

  • ルートがと一致しない場合、VerbFilterによってと一致しない場合、は何もしません。

しかし:

  • ルートはUrlRuleによってにマッチしたが、指定されたメソッドされている場合、それはあなたにステータス404を与えるではありません。
  • ルートはVerbFilterによってにマッチしたが、指定されたメソッドされている場合、それはあなたにステータス405を与えるではありません。
+0

ありがとうございました!どうやらYii2のActiveControllerのベースコントローラークラスは動詞も使用しているので、私も両方を使用します。 – florinmtsc