ion-bazan / guzzle-bundle-aliyun-signer-plugin
Alibaba Cloud API Gateway request signing plugin for Guzzle Bundle ⛽️
v0.1.0
2020-07-10 14:30 UTC
Requires
- php: >=7.2
- eightpoints/guzzle-bundle: ^8.0.1
- ion-bazan/aliyun-http-signer: ^0.2 || ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- infection/infection: ~0.15
- phpunit/phpunit: ^8.0 || ^9.0
This package is auto-updated.
Last update: 2024-10-29 06:11:57 UTC
README
Description
This Guzzle Bundle plugin integrates ion-bazan/aliyun-http-signer with Symfony.
Requirements
- PHP 7.2 or above
- Guzzle Bundle
Installation
Use Composer to install the plugin using:
composer require ion-bazan/guzzle-bundle-aliyun-signer-plugin
Usage
Enable the Bundle
Symfony 2.x and 3.x
Register the bundle in app/AppKernel.php
file:
new EightPoints\Bundle\GuzzleBundle\EightPointsGuzzleBundle([ new IonBazan\Bundle\GuzzleBundleAliyunSignerPlugin\AliyunRequestSignerPlugin(), ]);
Symfony 4+
To register the plugin in Symfony 4 and newer, replace registerBundles()
method in src/Kernel.php
:
public function registerBundles(): iterable { $contents = require $this->getProjectDir().'/config/bundles.php'; foreach ($contents as $class => $envs) { if ($envs[$this->environment] ?? $envs['all'] ?? false) { if ($class === \EightPoints\Bundle\GuzzleBundle\EightPointsGuzzleBundle::class) { yield new $class([ new \IonBazan\Bundle\GuzzleBundleAliyunSignerPlugin\AliyunRequestSignerPlugin(), ]); } else { yield new $class(); } } } }
Configuration
# config/packages/eight_points_guzzle.yaml eight_points_guzzle: clients: my_client: base_url: "http://target.url" plugin: aliyun_signer: app_id: 'Your AppID' secret: 'Your Secret'
Bugs & issues
If you found a bug or security vulnerability, please open an issue
Contributing
Please feel free to submit Pull Requests adding new features or fixing bugs.
Please note that code must follow PSR-1, PSR-2, PSR-4 and PSR-7.