我如何访问正在收到错误的其他服务http://www.example.com/zf2/services/call/login“error-router-no-match”
我的Module.config
return array(
'router' => array(
'routes' => array(
'services' => array(
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => array(
'route' => '/services',
'defaults' => array(
'__NAMESPACE__' => 'Restapi\Controller\restapi',
),
),
),
'services' => array(
'type' => 'segment',
'may_terminate' => true,
'options' => array(
'route' => '/services[/:id]',
'constraints' => array(
'id'=>'[0-9a-zA-Z]+',
),
'defaults' => array(
'controller' => 'Restapi\Controller\rest',
),
),
),
),
),
'controllers' => array(
'invokables' => array(
'Restapi\Controller\Rest' => 'Restapi\Controller\RestapiController',
),
),
'view_manager' => array(
'strategies' => array(
'ViewJsonStrategy`'`,
),
),
);
答案 0 :(得分:1)
我看到你的路线设置无效。 起初:一个服务部分重写另一个服务部分。 您可以设置默认值,因此不需要第一部分服务。 第二部分没有适当的路线 - 它只能处理像
这样的请求接受服务/呼叫/登录路线必须是这样的
<?php
return array(
'router' => array(
'routes' => array(
'services' => array(
'type' => 'segment',
'may_terminate' => true,
'options' => array(
'route' => '/services[/[:controller[/:action]]]',
'constraints' => array('id' => '[0-9a-zA-Z]+',),
'defaults' => array(
'controller' => 'Restapi\Controller\rest',
'action' => 'index', // Default action for "/services" route
),
),
),
),
),
'controllers' => array(
'invokables' => array(
'Restapi\Controller\Rest' => 'Restapi\Controller\RestapiController',
),
),
'view_manager' => array(
'strategies' => array(
'ViewJsonStrategy',
),
),
);