如何在创建magento custom rest api时定义路由

时间:2016-06-06 12:17:39

标签: api rest magento

我想在magento中创建自定义rest api,我尝试使用可用的教程调用它,但有些我只能使用GET调用_retrieve_retrieveCollection方法。

所以我想知道如何在 api2.xml 中创建路由,这样我就可以调用所有定义的函数,如:

  • _create

  • _retrieve

  • _delete

  • _Update

  • _retrieveCollection

  • _multiCreate

  • _multiUpdate

  • _multidelete

并且还想知道何时使用GET,POST,PUT和DELETE。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

  

那么我想知道如何在api2.xml中创建路由

这些其他功能权限是根据您要使用的角色的权限存在例如<create>1</create>来定义的。

一旦为角色定义了权限,路由就会依赖于每种类型。

最简单的方法(因为如果您正在添加自己的东西,Magento API没有被很好地引用)是查看现有的核心Magento代码,看看他们是如何做到的。

例如:

  • _create()由与_retrieveCollection()相同的端点处理,只使用POST而不是GET。 route_collection路线。 _create()使用create权限,而_retrieveCollection()使用retrieve权限。
  • _retrieve()是GET请求,定义为route_entity权限的retrieve路由
  • _delete()是对实体端点(route_entity)的DELETE请求,在授予delete权限的情况下

对于多个示例,请查看现有的核心代码示例,例如_multiCreate()Mage_Catalog_Model_Api2_Product_Website_Rest