如何在 SocialEngine Zend 中创建自定义 API 路由



我在SocialEngine中创建了一个新的REST API模块,可以通过http://server_address/mymodulehttp://server_address/mymodule/index浏览。我在controllers目录中Mymodule_IndexController了一个控制器类。它有一个方法indexAction我在其中输出一些 JSON 响应。它有效。
问题是,如何添加另一条路由和相应的操作,例如food/browse本模块中。我已经在manifest.php中添加了以下路由,但是当我浏览到http://server_address/mymodule/browse时,路由未解析(找不到页面错误(。

'routes' => array(       
'food_general' => array(
'route' => 'advancedrestapi/:controller/:action/*',
'defaults' => array(
'module' => 'advancedrestapi',
'controller' => 'index',
'action' => 'index',
),
'reqs' => array(
'controller' => 'D+',
'action' => 'D+',
),
),

如何为我的模块引入新的自定义路由和相应的 PHP 方法?

要添加自定义路由,您需要添加一个与"操作"同名的文件,然后添加 .tpl 扩展名。因此,对于有问题的路由('action'=>'browse'(,您需要有一个文件作为application/modules/mymodule/views/scripts/index/browse.tpl。该文件可以为空。
然后,您需要向 IndexController 类browseAction添加一个新方法(操作 +Action(。在方法中编写逻辑,您将能够通过http://server_address/mymodule/index/browse访问该操作。

最新更新