因公司開發需要,需要在官網心願單的基礎上增加小程式端心願單功能,因與官網在模組及請求路徑上有所不同,需要額外去開發一套程式碼功能。
一、踩得坑
1、magento2 介面必須新增註釋,否則報錯
2、在介面新增註釋的時候,一定要注意引數的型別及返回資料的型別,否則報錯
3、如果沒有在 etc/di.xml中建立介面與模型的對應關係,會報錯如下:
二、正確配置
1、建立介面:在 模組\Applet\Api 下建立介面檔案 WishlistInterface.php (一定要注意引數型別與介面返回型別)
2、建立模型檔案:在 模組\Applet\Model\Api 下建立模型檔案 Wishlist.php
3、在 模組\Applet\etc\di.xml 增加介面與模型的對應關係
<preference for="模組\Applet\Api\WishlistInterface" type="模組\Applet\Model\Api\Wishlist"/>
4、為介面建立路由:在 模組\Applet\etc\webapi.xml 檔案中
<route url="/V1/applet/addWishlistProduct" method="POST">
<service class="模組\Applet\Api\WishlistInterface" method="addWishlistProduct"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
5、在模型中實現的程式碼如下
```
public function removeWishlistProduct($customerId)
{
}
```
本作品採用《CC 協議》,轉載必須註明作者和本文連結