alxmsl / odnoklassnikiclient
Odnoklassniki API 简单客户端
Requires
- alxmsl/cli: >=1.0.2
- alxmsl/network: >=1.1.0
Requires (Dev)
- phpunit/phpunit: 4.7.*
This package is not auto-updated.
Last update: 2024-09-14 16:03:17 UTC
README
“Одноклассники” 社交网络 API 客户端。客户端允许执行以下操作
安装
只需在 composer.json
文件中连接到所需版本的库
"alxmsl/odnoklassnikiclient": "1.0.0"
然后运行代码更新 composer update
测试
为了检查库的可用性,可以运行单元测试命令 phpunit
$ phpunit
PHPUnit 4.7.5 by Sebastian Bergmann and contributors.
Runtime: PHP 5.5.23
....................
Time: 149 ms, Memory: 6.00Mb
OK (20 tests, 100 assertions)
OAuth2 认证
要通过 OAuth2 在 “Одноклассники” 中进行认证,需要创建一个 OAuth\Client 类的实例,并使用应用程序所需的权利,通过浏览器执行通过方法 createAuthUrl
创建的链接进行认证
$Client = new Client();
$Client->setClientId(<идентификатор прилоежния>)
->setRedirectUri(<URI переадресации для кода>);
$url = $Client->createAuthUrl(
<массив интересующих прав>
, <флаг необходимости мобильного лейаута для авторизации в браузере>);
通过代码可以进行认证并获得访问令牌和刷新令牌(访问令牌的刷新令牌)
$Client = new Client();
$Client->setClientId(<идентификатор прилоежния>)
->setClientSecret(<секретный ключ приложения>)
->setRedirectUri(<URI переадресации для кода>);
$Token = $Client->authorize(<код авторизации>);
认证链接的示例可以在文件 oauth2.uri.php 中查看,而获取访问令牌的示例可以在文件 oauth2.authorize.php 中查看
认证也可以通过脚本 authorize.php 执行
$ php bin/authorize.php -h
Using: /usr/local/bin/php bin/authorize.php [-h|--help] [-o|--code] -c|--client [-r|--redirect] [-s|--scopes] -e|--secret
-h, --help - show help
-o, --code - authorization code
-c, --client - client id
-r, --redirect - redirect uri
-s, --scopes - grant scopes
-e, --secret - client secret
可以通过脚本 refresh.php 更新访问令牌
$ php bin/refresh.php -h
Using: /usr/local/bin/php bin/refresh.php [-h|--help] -c|--client -r|--redirect -t|--token -s|--secret
-h, --help - show help
-c, --client - client id
-r, --redirect - redirect uri
-t, --token - refresh token
-s, --secret - client secret
调用 OK REST API 方法
要调用 OK REST API 方法,需要创建一个 API\Client 客户端的实例,并定义访问令牌,然后开始调用 call
方法。如果预计在调用期间访问令牌的认证会过期,也可以调用 callConfidence
$Token = new Token();
$Token->setAccessToken(<токен доступа>)
->setRefreshToken(<токен обновления>)
->setTokenType(Token::TYPE_SESSION);
$Client = new Client();
$Client->setApplicationKey(<ключ приложения>)
->setToken($Token)
->setClientId(<идентификатор приложения>)
->setClientSecret(<секретный ключ приложения>);
$Result = $Client->call(<метод>, <массив параметров вызова>);
$Result = $Client->callConfidence(<метод>, <массив параметров вызова>);
call
和 callConfidence
的使用示例可以在文件 api.users.getCurrentUser.php 和 api.users.getInfo.php 中找到
同样,可以使用执行 OK REST API 方法的脚本 call.php
$ php bin/call.php -h
Using: /usr/local/bin/php bin/call.php [-h|--help] -c|--client -d|--data -k|--key -m|--method -s|--secret -t|--token
-h, --help - show help
-c, --client - client id
-d, --data - API method parameters (JSON)
-k, --key - application key
-m, --method - API method name
-s, --secret - client secret
-t, --token - access token
许可证
版权所有 © 2015 Alexey Maslov alexey.y.maslov@gmail.com Apache License, Version 2.0 许可。许可证的完整文本可以通过链接查看
https://apache.ac.cn/licenses/LICENSE-2.0