我使用 Apigility 为我的 ZF2 项目生成与代码连接的 REST API 包装器 - 它运行良好(除了在命令行上很容易解决的一些文件权限问题)。昨天我运行了一个作曲家更新,它将 Apigility 更新为 1.0.4,现在我的集合 GET 方法(带有签名 fetchAll($params = array()) 被一个空参数数组调用。我可以从 Firebug 控制台看到这些是仍然使用正确的参数浏览器端进行调用,因此Apigility包装器处理似乎已经改变了这一点.有没有人有任何知识或可以解释为什么这可能已经改变/破坏了?
我还发现,自从更新以来,我无法访问用于生成 API 包装器的 Apigility Admin UI,因为它无法加载并出现 ZF2 路由错误:
Fatal error: Uncaught exception 'Zend\Mvc\Router\Exception\RuntimeException' with message 'Part route may not terminate' in /private/var/www/vhosts/hamster.local/vendor/zendframework/zendframework/library/Zend/Mvc/Router/Http/Part.php:202 Stack trace:
#0 /private/var/www/vhosts/hamster.local/vendor/zendframework/zendframework/library/Zend/Mvc/Router/Http/TreeRouteStack.php(351): Zend\Mvc\Router\Http\Part->assemble(Array, Array)
#1 /private/var/www/vhosts/hamster.local/vendor/zendframework/zendframework/library/Zend/View/Helper/Url.php(100): Zend\Mvc\Router\Http\TreeRouteStack->assemble(Array, Array)
#2 [internal function]: Zend\View\Helper\Url->__invoke('zf-apigility')
#3 /private/var/www/vhosts/hamster.local/vendor/zendframework/zendframework/library/Zend/View/Renderer/PhpRenderer.php(399): call_user_func_array(Object(Zend\View\Helper\Url), Array)
#4 /private/var/www/vhosts/hamster.local/vendor/zfcampus/zf-apigility-admin-ui/view/zf-apigility-ui.phtml(6): Zend\View\Renderer\PhpRenderer->__call('url', Array)
#5 /private/v in /private/var/www/vhosts/hamster.local/vendor/zendframework/zendframework/library/Zend/Mvc/Router/Http/Part.php on line 202
除了 Apigility 的更新失败之外,我不知道是什么原因造成的。回归到 v1.0.3 解决了这两个问题,但我希望在 1.0.4 中有一些更新的功能。
非常感谢任何帮助!