Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rabotaru/oauth-client
Тестовый клиент для доступа к API через OAuth
https://github.com/rabotaru/oauth-client
Last synced: about 14 hours ago
JSON representation
Тестовый клиент для доступа к API через OAuth
- Host: GitHub
- URL: https://github.com/rabotaru/oauth-client
- Owner: RabotaRu
- Created: 2019-03-11T11:46:22.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-06-23T07:39:44.000Z (over 3 years ago)
- Last Synced: 2024-11-06T14:52:19.114Z (10 days ago)
- Language: PHP
- Homepage: https://dev.rabota.ru
- Size: 21.5 KB
- Stars: 1
- Watchers: 5
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Api Client
Библиотека предоставляющая интерфейс для доступа к API [rabota.ru](http://www.rabota.ru/).
Подробней об использовании API и доступных методах читайте в [документации](https://dev.rabota.ru/doc.html).[BSD Zero Clause License](https://spdx.org/licenses/0BSD.html)
## Установка
Для установки используйте composer:
```
composer require rabotaru/oauth-client
```## Использование
После установки клиента вы можете сразу использовать его для получения данных с апи.1. Клонируйте репозиторий в любую папку.
2. В настройках веб сервера создайте новый хост со ссылкой на папку с клиентом.
3. Отредактируйте файл config.php. Укажите там слеующие параметры:
app_id - уникальный иентификатор приложения
secret - секретный код приложения
api.url - роут, на который будет отправлен запрос
api.params - параметры запроса.
4. Откройте в браузере файл index.php.## Описание методов
Для доступа к методам API используется механизм авторизации основанный на протокле OAuth2.0.Подробнее читайте [здесь](https://dev.rabota.ru/doc.html).
Предусмотрена следующая последовательность предоставления доступа:
1. Запрос приложения на получения разрешения на авторизацию. Получение кода
2. Получение авторизационного токена при помощи кода.
3. Передача токена через http-заголовок при отпраке запроса к APIДля отправки запросов и авторизации используйте экземпляр класса RabotaApi/Client
При создании клиента в конструктор перадаются параметры:
$appId - уникальный идентификатор приложении, полученный при регистрации приложения на сайте.
$secret - секрет код, полученный при регистрации приложений.
$token - авторизационный токен (если токен уже получен)
$expires - время жизни токена(если токен уже получен)
###Пример создания клиента:```php
$appId = 3803;
$secret = '7oRFT6vBEaohqud4PYT2ZmIUL1Kn3uBB';
$token = 'a4nQuLXM7x46sDwrUlrCbsg9w1f2xzxn';
$expires = 86000;$client = new Client(
$appId, $secret, $token, $expires
);
```
###Получения ссылки на страницу авторизации:```php
$url = $client->getAuthenticationUrl($redirect)
```
где $redirect - ссылка, на страницу, куда будет произведен редирект с отсылкой кода###Отправка запроса на получение токена
```php
$code = $_GET['code'];
$client->requestToken($code);
```
где $code - код полученный после предоставления прав на авторизацию
### Отправка запроса к API```php
$route = '/v4/me.json';
$params = [];
$method = "POST";
$response = $client->fetch(
$route, $params, $method
);
echo $response->getJsonDecode();
```В файле index.php можно посмотреть пример отправки запроса к API с авторизацией.