VK Open API wrapper for AngularJS.
- Supports VK API methods via AngularJS service.
- Supports VK widgets via AngularJS directives.
- Replaces callbacks with promises.
You may initialize your VK application using the provider during the configuration phase:
angular.module('my-app', ['vk-api-angular'])
.config(function (VKApiProvider) {
VKApiProvider.init(10000); // Your VK APP_ID
});
VKApi factory duplicates the official VK Open API method naming, in particular:
VKApi.Api.call
VKApi.Auth.login
VKApi.Auth.logout
VKApi.Auth.revokeGrants
VKApi.Auth.getLoginStatus
VKApi.Auth.getSession
However, the promises are used instead of callbacks. This gives a better control over the success/error handling mechanism.
// Log in and request the "photos" and "video" permissions.
// See https://vk.com/dev/permissions for the full permission list.
VKApi.Auth.login({
photos: true,
video: true
}).then(
// Success:
function (response) {
var name = response.session.user.first_name;
alert('Hello, ' + name + '!');
},
// Error:
function (response) {
alert('Sorry, access denied.');
console.error(response);
}
);
// Call "users.get" API method.
// See https://vk.com/dev/methods for the full method list.
VKApi.Api.call('users.get').then(
// Success:
function (response) {
var name = response[0].first_name;
alert('Hello, ' + name + '!');
},
// Error:
function (response) {
alert('Sorry, could not fetch the user data.');
console.error(response);
}
);
<vk-allow-messages-from-community group-id="ID"></vk-allow-messages-from-community>
<vk-auth></vk-auth>
<vk-comments></vk-comments>
<vk-community group-id="ID"></vk-community>
<vk-community-messages group-id="ID"></vk-community-messages>
<vk-contact-us owner-id="ID"></vk-contact-us>
<vk-like></vk-like>
<vk-poll poll-id="POLL"></vk-poll>
<vk-post owner-id="ID" post-id="POST" hash="HASH"></vk-post>
<vk-recommended></vk-recommended>
<vk-share></vk-share>
<vk-subscribe owner-id="ID"></vk-subscribe>