Magento2 需要为Magento 2中的评论创建自定义REST API

Magento2 需要为Magento 2中的评论创建自定义REST API,magento2,Magento2,我需要在magento 2中创建一个REST API,它将存储ID作为参数,并返回特定存储ID的所有评论 如果传递其他参数,如客户id、产品id,则应执行过滤器。这是一个非常宽泛的主题。我正在一步一步地解释程序 第一步。在Magento 2 core文件夹中,转到app/code。 创建供应商文件夹(如ECMAG)和子文件夹(如MyReviews)。 在MyReviews文件夹中创建、三个文件夹Api等和模型 第二步。在etc文件夹中,使用以下代码创建di.xml文件 <?xml vers

我需要在magento 2中创建一个REST API,它将存储ID作为参数,并返回特定存储ID的所有评论


如果传递其他参数,如客户id、产品id,则应执行过滤器。

这是一个非常宽泛的主题。我正在一步一步地解释程序

第一步。在Magento 2 core文件夹中,转到app/code。 创建供应商文件夹(如ECMAG)和子文件夹(如MyReviews)。 在MyReviews文件夹中创建、三个文件夹Api等和模型

第二步。在etc文件夹中,使用以下代码创建di.xml文件

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">

    <preference for="ECMAG\MyReviews\Api\MyReviewInterface"
                type="ECMAG\MyReviews\Model\MyReviewClass" />

</config>

接下来,在同一文件夹中创建module.xml文件

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="ECMAG_MyReviews" setup_version="1.0.0"/>
</config>
<?xml version="1.0"?>
<routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../app/code/Magento/Webapi/etc/webapi.xsd">
    <route url="/V1/showreview/allreviews/:storeId" method="GET">
        <service class="ECMAG\MyReviews\Api\MyReviewInterface" method="getAllReviews"/>
        <resources>
            <resource ref="anonymous"/>
        </resources>
    </route>

</routes>

接下来,在同一文件夹中创建webapi.xml文件

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="ECMAG_MyReviews" setup_version="1.0.0"/>
</config>
<?xml version="1.0"?>
<routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../app/code/Magento/Webapi/etc/webapi.xsd">
    <route url="/V1/showreview/allreviews/:storeId" method="GET">
        <service class="ECMAG\MyReviews\Api\MyReviewInterface" method="getAllReviews"/>
        <resources>
            <resource ref="anonymous"/>
        </resources>
    </route>

</routes>

第三步。接下来在Api文件夹中创建接口,如

<?php
namespace ECMAG\MyReviews\Api;
interface MyReviewInterface
{

    /**
     * GET  review by its ID
     *
     * @api
     * @param string $storeId
     * @return array
     * @throws \Magento\Framework\Exception\NoSuchEntityException
     */
    public function getAllReviews($storeId);

}

我将遵循这些步骤,然后告诉它是否工作。谢谢你的帮助。谢谢你的支持。真的很有帮助。