ddb / stuart-api-bundle
用于与stuart API通信的Bundle
1.1.10
2019-05-29 09:23 UTC
Requires
- php: ^7.1.3
- stuartapp/stuart-client-php: ^3.5
- symfony/config: ^4.0
- symfony/dependency-injection: ^4.0
- symfony/event-dispatcher: ^4.2
- symfony/http-kernel: ^4.0
- symfony/serializer: ^4.2
- symfony/translation: ^4.2
Requires (Dev)
- symfony/framework-bundle: ^4.2
README
使用stuart php库与symfony集成的简单bundle
配置
stuart_api: private_key: "stuart super private key" public_key: "stuart public key" environment: "SANDBOX" // OR "PRODUCTION" vat_rate: 20 authorized_webhook_ips: sandbox: - "34.254.62.41" - "54.194.139.211" production: - "108.128.110.19" - "54.171.243.90" - "52.51.60.65"
函数
StuartApi
用于创建和派发任务
- public function createJobObjectFromRequest(Request $request)
- public function createJobObject(
- public function addJob(Job $job)
StuartApiController
这些函数公开了路由并返回JSONResponse
- nextPickupSlot($city = "Bordeaux") : 获取城市的下一个可用提货时段
- validateJob(Request $request)
- priceJob(Request $request)
事件
StuartApiEvents.php定义了事件名称的常量
WebhookEvent.php
此事件重新派发/webhook路由上的任何请求。您可以在应用程序中注册EventSubscriberInterface来监听这些事件并相应地更新您的订单。
只有来自配置中白名单IP的请求才会被允许通过,并且仅限于相应环境。
namespace App\EventSubscriber; use DdB\StuartApiBundle\Event\StuartApiEvents; use DdB\StuartApiBundle\Event\WebhookEvent; use Symfony\Component\EventDispatcher\EventSubscriberInterface; class StuartWebhookSubscriber implements EventSubscriberInterface { public function onStuartApiWebhook(WebhookEvent $event) { $request = $event->getRequest(); //Do something with the request } public static function getSubscribedEvents() { return [ StuartApiEvents::WEBHOOK_API => 'onStuartApiWebhook', ]; } }
翻译
所有由Stuart API返回的错误都可以使用Resources/translations目录中的Errors.(lang).yaml文件进行翻译