在我的Api中,我在module.config.php中指定了多个子路由。当使用无效路由访问Api时,我得到了我的应用程序模块的404,但我想在json中返回404。 我的想法是捕获所有无效的路由并转发到控制器操作以返回有效的json 404响应。
我的路线配置如下:
UITextField
通配符类型以某种方式工作但不适用于所有路由。但是不推荐使用通配符。
我怎样才能做到这一点?
答案 0 :(得分:0)
我决定使用正则表达式路线类型并将其放在我孩子路线的最顶端:
'catch-all-no-match' => array(
'type' => 'Regex',
'options' => array(
'regex' => '(?<content>.+)',
'defaults' => array(
'controller' => 'Api\Controller\Index',
'action' => 'catch-all-no-match',
),
'spec' => '%content%',
),
),
不要把它放在其他地方,因为它会在检查其他路线之前匹配。