Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

smart_vk_api

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

smart_vk_api

  • 1.1.1
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

SmartVkApi

Gem Version Build Status Code Climate

Библиотека, обеспечивающая по-настоящему удобный и простой интерфейс для работы с API социальной сети "Вконтакте".

Что еще один?

Да, в некотором роде. Но не совсем.

  1. Почти все гемы для работы с VK API, которые можно найти на rubygems.org, давно не обновлялись.
  2. Один из самых приятно реализованных и более или менее актуальных тянет за собой количество зависимостей, которое ставит в тупик.

Поэтому при разработке этого гема используются три простых принципа:

  1. Он должен быть максимально удобным в использовании;
  2. Он должен быть настолько "тонким" по отношению к API, насколько это вообще возможно сделать, не жертвуя первым пунктом;
  3. Он должен тянуть за собой только необходимый минимум зависимостей, в идеале - ни одной;

Как установить?

Добавьте в Gemfile вашего приложения:

gem 'smart_vk_api'

После чего запустите:

$ bundle install

Или просто установите гем вручную:

$ gem install smart_vk_api

Прямое использование API

В простейшем случае можно вызвать произвольный метод VK API и передать ему параметры следующим образом:

SmartVkApi.call('users.get', :user_ids => 'kimrgrey') # [{:uid=>3710412, ...}]

Для вызова нескольких методов разумно создать враппер один раз и использовать его повторно:

vk = SmartVkApi.vk
vk.call('users.get', :user_ids => 'kimrgrey') # [{:uid=>3710412, ...}]
vk.call('photos.get', :owner_id => '3710412', :album_id => 'wall')

По умолчанию, access_token не передается, так что для вызова доступны только публичные методы. При попытке вызвать метод, требующий наличие токена, возникнет исключение SmartVkApi::MethodCallError. Например:

SmartVkApi.call('wall.get', :owner_id => '3710412') # SmartVkApi::MethodCallError: {"error":{..., "error_msg":"Access denied: user hid his wall from accessing from outside"}}

Чтобы вызвать приватные методы, можно задать глобальный конфиг, токен из которого будет использоваться по умолчанию, если он задан:

SmartVkApi.configure do |config|
  config.access_token = ACCESS_TOKEN
end

Если при этом передать другой access_token в качестве параметра для метода call, ему будет отдано предпочтение:

SmartVkApi.call('users.get', :user_ids => 'kimrgrey', :access_token => ANOTHER_ACCESS_TOKEN)

Проксирующий объект

Вместо прямых обращений к API через передачу имени метода в качестве параметра для call можно использовать более удобный вариант, позволяющий вызывать методы VK API как собственные методы враппера. Пример:

  vk = SmartVkApi.vk
  vk.users.get(:user_ids => 'kimrgrey')

Токен доступа, как и для прямых вызовов, можно задать в конфиге или передать в качестве параметра метода.

  vk = SmartVkApi.vk
  vk.users.get(:user_ids => 'kimrgrey', :access_token => ACCESS_TOKEN)

Как помочь в разработке?

Все как обычно:

  1. Сделайте форк (https://github.com/kimrgrey/smart_vk_api/fork)
  2. Добавьте ветку (git checkout -b my-new-feature)
  3. Сделайте коммит (git commit -am 'Add some feature')
  4. Сделайте пуш (git push origin my-new-feature)
  5. Пришлите pull request

FAQs

Package last updated on 28 Feb 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc