quasiris / quasiris-sender-plugin
插件用于捕获spryker中的产品事件并将其发送到自定义API
dev-master
2020-06-23 14:11 UTC
This package is not auto-updated.
Last update: 2024-09-25 10:03:32 UTC
README
此库用于捕获有关产品(抽象、具体)的事件,例如
- 创建、
- 更新、
- 发布、
- 取消发布
并将其发送到自定义API URL(POST方法)。
数据到达API
API_URL_MAIN: { "abstract": {}, //info about abstract of product "concrete": {}, //info about concrete of product "categories": { "categories": [] //info about categories of product } } API_URL_TESTING: { "status": "SUCCESS", "params": { "date": "23.06.20 10:26:06", "listenerName": "QuasirisSenderPlugin", "eventName": "Product.product_abstract.after.update", "abstract": { }, "concrete": [], "categories": { "categories": [] }, "productId": "//id of product", "type": "products" }, "eventName": "Product.product_abstract.after.update", "request_form_params_main_api": "params with goes to api", "response_from_main_api": {}, "url_main_api": "API_URL_MAIN", "url_testing_api": "API_URL_TESTING", "product_id": "//id of product" }
安装
如果您还没有安装Composer,请访问Composer网站并安装它。
在您的项目终端中输入
composer require quasiris/quasiris-sender-plugin
使用方法
安装后,转到Pyz\Zed\Event\EventDependencyProvider.php;
导入订阅者
use Quasiris\Zed\QuasirisSenderPlugin\Communication\Plugins\Event\Subscriber\QuasirisSenderPluginSubscriber;
在getEventSubscriberCollection()方法中,在return $eventSubscriberCollection;上方,注册要监视的事件
$eventSubscriberCollection->add(new QuasirisSenderPluginSubscriber());
所有实现Pyz\Zed\Event\EventDependencyProvider.php
<?php // Pyz\Zed\Event\EventDependencyProvider.php namespace Pyz\Zed\Event; use ...; . . . use Quasiris\Zed\QuasirisSenderPlugin\Communication\Plugins\Event\Subscriber\QuasirisSenderPluginSubscriber; class EventDependencyProvider extends SprykerEventDependencyProvider { /** * @return \Spryker\Zed\Event\Dependency\EventCollectionInterface */ public function getEventListenerCollection() { return parent::getEventListenerCollection(); } /** * @return \Spryker\Zed\Event\Dependency\EventSubscriberCollectionInterface */ public function getEventSubscriberCollection() { . . . . . $eventSubscriberCollection->add(new QuasirisSenderPluginSubscriber()); return $eventSubscriberCollection; } }
接下来,转到config/Shared/config_default.php
从插件导入常量并添加常量
// config/Shared/config_default.php use Quasiris\Zed\QuasirisSenderPlugin\Shared\QuasirisSenderPluginConstants; //create this $config[QuasirisSenderPluginConstants::MY_SETTING] = [ 'API_URL_MAIN' => 'main url where data goes', 'API_URL_TESTING' => 'testing url where data goes with additional informations' ]; $config[KernelConstants::PROJECT_NAMESPACES] = [ 'Pyz', 'Quasiris', //add this in KernelConstants::PROJECT_NAMESPACES ];
信息:API_URL_MAIN和API_URL_TESTING独立工作,您只能添加其中之一,例如。
// config/Shared/config_default.php use Quasiris\Zed\QuasirisSenderPlugin\Shared\QuasirisSenderPluginConstants; $config[QuasirisSenderPluginConstants::MY_SETTING] = [ 'API_URL_MAIN' => 'main url where data goes' ]; ------------------------ Different example ------------------------------ // config/Shared/config_default.php use Quasiris\Zed\QuasirisSenderPlugin\Shared\QuasirisSenderPluginConstants; $config[QuasirisSenderPluginConstants::MY_SETTING] = [ 'API_URL_TESTING' => 'testing url where data goes with additional informations' ];