Можно ли использовать Magento 2.4 исключительно как админку магазина и REST API?
Я хотел бы создать свой магазин как приложение SPA/MPA/NodeJS, которое не имеет ничего общего ни с PHP, ни с шаблонами Magento и т. д., а использует только мою серверную установку Magento через REST API?
Предоставляет ли API мне полный контроль над внутренними данными для обычных нужд магазина (поиск и покупка продуктов и тому подобное)?
Позволяет ли API создавать мои пользовательские конечные точки?
Конечно, вы можете проверить все доступные методы REST API на странице /swagger вашего экземпляра Magento2 (например, https://local.magento2.com/swagger) или в документации Magento2. https://magento.redoc.ly/
Вы также можете легко создавать пользовательские точки с помощью etc/webapi.xml
, например.
<?xml version = "1.0"?>
<routes xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation = "urn:magento:module:Magento_Webapi:etc/webapi.xsd">
<!-- with admin token -->
<route url = "/V1/customers/sample/admin" method = "POST">
<service class = "Vendor\Customer\Api\AccountManagementInterface" method = "initiateAccountReset"/>
<resources>
<resource ref = "Vendor_Customer::restore"/>
</resources>
</route>
<!-- with customer token -->
<route url = "/V1/customer/sample" method = "POST">
<service class = "Vendor\Customer\Api\AccountManagementInterface" method = "sample"/>
<resources>
<resource ref = "self"/>
</resources>
<data>
<parameter name = "customerId" force = "true">%customer_id%</parameter>
</data>
</route>
<!-- anonymous -->
<route url = "/V1/customer/sample/anonymous" method = "POST">
<service class = "Vendor\Customer\Api\AccountManagementInterface" method = "sample"/>
<resources>
<resource ref = "anonymous" />
</resources>
</route>
</routes>