vk-sdk
Easier way to make vk.com API requests
Methods
Method | Returns | Description |
---|
setToken(String token) | this | Sets token which will be used for requests to VK API. |
serverAuth(Object authParams) | promise | Performs Application Server Authorization. authParams must contain client_id and client_secret properties. |
siteAuth(Object authParams) | promise | Performs Sites Authorization. authParams must contain client_id , client_secret , code , redirect_uri properties. |
callMethod(String name, Object params) | promise | Calls API method method with parameters params . |
appendCall(String methodName, Object params) | promise | Used to delay request until execute method is called. |
execute() | promise | Sends by one request all delayed calls added by appendCall method. |
Example of usage
Preparation
var vk = require('vk-sdk');
vk.setToken();
Simple request
vk.callMethod('users.get', {
uids: [1, 5]
})
.then(function (response) {
console.log('Success: ' + JSON.stringify(response));
})
.catch(function (error) {
console.log('Fail: ' + JSON.stringify(error));
});
Grouping several requests to a single
There are two calls of the execute
method in the snippet below, so only two request would be sent in fact.
vk.appendCall('users.get', {uid: 1})
.then(function (response) {
console.log(JSON.stringify(response));
})
.catch(onError);
vk.appendCall('friends.get', {uid: 1})
.then(function (response) {
console.log("\nFriends list: ", JSON.stringify(response));
})
.catch(onError);
vk.appendCall('wall.get', {owner_id: 1})
.then(function (response) {
console.log("\nWall posts: ", JSON.stringify(response));
})
.catch(onError);
vk.execute();
vk.appendCall('users.get')
.then(function (response) {
console.log(JSON.stringify(response));
})
.catch(onError);
vk.appendCall('friends.get')
.then(function (response) {
console.log("\nFriends list: ", JSON.stringify(response));
})
.catch(onError);
vk.appendCall('photos.getAlbums')
.then(function (response) {
console.log("\nAlbums list: ", JSON.stringify(response));
})
.catch(onError);
vk.execute();
function onError (error) {
console.log(JSON.stringify(error));
}