安装和创建演示的第一项服务后出现Apigility错误

时间:2019-03-23 01:08:41

标签: zend-framework2 apigility

我刚刚安装了Apigility,并且按照教程操作时出现错误。当我尝试使用邮递员给我的服务打电话时,出现这样的错误

Zend \ View \ Renderer \ PhpRenderer :: render:无法呈现模板“ status / v1 / rpc / ping / ping / ping”;解析器无法解析为文件

我对邮递员的呼唤就是这样。 http://localhost/demo/api/public/ping

如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

对于任何有此问题的人,请在Apigility示例中更改示例代码:

namespace Status\V1\Rpc\Ping;
use Zend\Mvc\Controller\AbstractActionController;
use ZF\ContentNegotiation\ViewModel;

class PingController extends AbstractActionController
{
public function pingAction()
{
    return new ViewModel([
        'ack' => time()
    ]);
}
}

对此

namespace Status\V1\Rpc\Ping;

use Zend\Mvc\Controller\AbstractActionController;

class PingController extends AbstractActionController
{
public function pingAction()
{

return ['ack' => time()];

}
}

做这个例子很好。

答案 1 :(得分:0)

作为Zend Framework的一部分的适应性现在已成为开源Laminas项目的一部分,被称为Laminas API工具。

在尝试创建API服务之前,请确保已在PHP配置中禁用Zend OPcache。

快速验证步骤

  1. 创建一个phpconfig.php文件,该文件显示您的开发服务器的php配置。请勿将此产品投入生产。有关详情,请参见https://www.php.net/manual/en/function.phpinfo.php
  1. 在您的服务器上打开该文件http:// localhost:8080 / phpconfig.php并查看两件事:a)ZendOPcache-如果启用,则查看b)加载的php.ini,如/ etc / php7 / cli / php.ini
  2. 将opcache.enable = 0添加到[opcache]部分。即使已将其注释掉,它仍处于加载状态,您是否在右上方看到了它?
  3. 重新启动您的PHP服务器/应用程序以确认Zend OPcache是​​否已关闭。