ma-residence/php-sdk

此包的最新版本(2.4.2)没有可用的许可证信息。

2.4.2 2023-07-25 07:03 UTC

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对象。