定制 alxmsl/odnoklassnikiclient 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

alxmsl/odnoklassnikiclient

Composer 安装命令:

composer require alxmsl/odnoklassnikiclient

包简介

Simple client for Odnoklassniki API

README 文档

README

🇬🇧

License Latest Stable Version Total Downloads

Build Status Scrutinizer Code Quality Dependency Status

Клиент для работы с 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. С полным текстом лицензии можно ознакомиться по ссылке

http://www.apache.org/licenses/LICENSE-2.0

alxmsl/odnoklassnikiclient 适用场景与选型建议

alxmsl/odnoklassnikiclient 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 11.14k 次下载、GitHub Stars 达 10, 最近一次更新时间为 2014 年 07 月 16 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「OK」 「odnoklassniki」 「odnoklassniki-api」 「ok-api」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 alxmsl/odnoklassnikiclient 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 alxmsl/odnoklassnikiclient 我们能提供哪些服务?
定制开发 / 二次开发

基于 alxmsl/odnoklassnikiclient 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 11.14k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 10
  • 点击次数: 4
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 10
  • Watchers: 2
  • Forks: 8
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2014-07-16