ma-residence / php-sdk
此包的最新版本(2.4.2)没有可用的许可证信息。
2.4.2
2023-07-25 07:03 UTC
Requires
- php: 8.*
- guzzlehttp/guzzle: 7.5.*
- symfony/cache: 5.4.*
Requires (Dev)
- phpunit/phpunit: 8.*
- symfony/browser-kit: 6.2.*
- symfony/dom-crawler: 6.2.*
- symfony/dotenv: ^6.2
- symfony/var-dumper: 6.2.*
- symfony/var-exporter: 6.2.*
README
为ma-residence的API提供的官方PHP SDK。您可以访问ma-residence。
入门
要使用ma-residence的API,您必须注册您的应用程序。在注册应用程序时,您将获得一个client_id和一个client_secret。使用API时将需要这两个参数。
安装
编辑您的composer.json
{ "require": { "ma-residence/php-sdk": "2.0.*" }, "repositories": [ { "type": "vcs", "url": "https://github.comma-residence/php-sdk.git", "no-api": true } ] }
Composer更新
docker run -it --name docker-php-sdk --rm -v "$PWD/php-sdk:/user/src/php-sdk" -w /user/src/php-sdk composer composer update
用法
<?php use MR\SDK\Client; $host = 'https://api.ensembl.fr/'; $clientId = 'CLIENT_ID'; $clientSecret = 'CLIENT_SECRET'; $mrClient = new Client($host, $clientId, $clientSecret);
默认情况下,Client
会将令牌存储在内存中。如果您需要实现自定义令牌存储,可以使用TokenStorageInterface
并将其分配给Client
。
<?php $storage = new MyTokenStorage(); $mrClient = new Client($host, $clientId, $clientSecret, $storage);
初始化类后,您可以使用电子邮件和密码登录
$mrClient->auth()->loginWithCredentials('developpeur@ma-residence.fr', 'password');
或使用外部令牌
$mrClient->auth()->loginWithExternalToken('facebook', 'FACEBOOK_ACCESS_TOKEN');
如果您要注销
$mrClient->auth()->logout();
端点
$mrClient->myEndpoint()->foo();
可用端点
- 我
- 用户
- 组
- 关联
- 市政厅
- 分类
请求
如果您必须调用没有端点的URL,您仍然可以执行自己的请求
// GET Request $mrClient->request()->get('/foo', [ 'id' => $id ]); // POST Request $mrClient->request()->post('/foo', [], [ 'field_a' => 'A', 'field_b' => 'B', ]); // PUT Request $mrClient->request()->put('/foo', [], [ 'field_a' => 'AA', 'field_b' => 'BB', ]); // PATCH Request $mrClient->request()->patch('/foo', [], [ 'field_b' => 'C', ]); // DELETE Request $mrClient->request()->delete('/foo');
每个请求都返回一个Response
对象。