Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ api Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅
ΠΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ api Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅
Java-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΡΠΏΡΠΎΡΠ°ΡΡΠ°Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ OAuth-Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² API.
ΠΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ VK API JSON Schema. Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Github: Π·Π΄Π΅ΡΡ. Π ΡΡ Π΅ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ API 5.126.
ΠΠΊΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅Π»ΠΈΠ· β 1.0.7, ΠΎΡ 9 Π΄Π΅ΠΊΠ°Π±ΡΡ 2020 Π³ΠΎΠ΄Π°.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² Maven:
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² Gradle:
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² SBT:
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅. ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ ΡΠΈΠΏ.
Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ SMS. ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ.
Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΠ°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ ID ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ API_ID), ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ (CLIENT_SECRET) ΠΈ Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠΉ redirect URI (REDIRECT_URI).
dependencies <
compile group: ‘org.slf4j’, name: ‘slf4j-jdk14’, version: ‘1.7.22’
>
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½ΡΠΉ ΡΠ°ΠΉΠ» src/main/resources/logging.properties:
.level=INFO
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=FINEST
deng.level=FINEST
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΏΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π°:
//Log4j API and Core implementation required for binding
compile group: ‘org.apache.logging.log4j’, name: ‘log4j-api’, version: ‘2.7’
compile group: ‘org.apache.logging.log4j’, name: ‘log4j-core’, version: ‘2.7’
>
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½ΡΠΉ ΡΠ°ΠΉΠ» src/main/resources/log4j2.xml:
TransportClient transportClient = HttpTransportClient.getInstance();
VkApiClient vk = new VkApiClient(transportClient);
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ OAuth 2.0 Π² API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ.
Authorization Code Flow ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ API Ρ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ.
ΠΡΠ° ΡΡ Π΅ΠΌΠ° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΡΠ°ΠΏΠΎΠ² β ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° («code») ΠΈ ΠΎΠ±ΠΌΠ΅Π½ Π΅Π³ΠΎ Π½Π° ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ° («access_token»). Π‘Π½Π°ΡΠ°Π»Π° ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ «code» (ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ), Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΠΎΡΠΎΠΉ ΡΡΠ°ΠΏ:
UserAuthResponse authResponse = vk.oAuth()
.userAuthorizationCodeFlow(APP_ID, CLIENT_SECRET, REDIRECT_URI, code)
.execute();
UserActor actor = new UserActor(authResponse.getUserId(), authResponse.getAccessToken());
ΠΠ΅ΡΠΎΠ΄ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ID ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, redirect URI, ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΠ° ΠΈ «code», ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠ°ΠΏΠ΅.
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΎΠ±ΡΠ΅ΠΊΡ UserActor. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
GroupAuthResponse authResponse = vk.oAuth()
.groupAuthorizationCodeFlow(APP_ID, CLIENT_SECRET, REDIRECT_URI, code)
.execute();
GroupActor actor = new GroupActor(groupId, authResponse.getAccessTokens().get(groupId));
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΎΠ±ΡΠ΅ΠΊΡ GroupActor. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°.
try <
UserAuthResponse authResponse = vk.oAuth()
.userAuthorizationCodeFlow(APP_ID, CLIENT_SECRET, REDIRECT_URI, code)
.execute();
> catch (OAuthException e) <
e.getRedirectUri();
>
UserActor actor = new UserActor(authResponse.getUserId(), authResponse.getAccessToken());
ServiceClientCredentialsFlowResponse authResponse = vk.oAuth()
.serviceClientCredentialsFlow(APP_ID, CLIENT_SECRET)
.execute();
ServiceActor actor = new ServiceActor(APP_ID, CLIENT_SECRET, authResponse.getAccessToken());
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² API ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
GetResponse getResponse = vk.wall().get(actor)
.ownerId(1)
.count(100)
.offset(5)
.filter(«owner»)
.execute();
List users = vk.users().get(actor)
.userIds(«1»)
.fields(UserField.VERIFIED, UserField.SEX)
.lang(Lang.EN)
.execute();
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
PhotoUpload serverResponse = vk.photos().getWallUploadServer(actor).execute();
WallUploadResponse uploadResponse = vk.upload().photoWall(serverResponse.getUploadUrl(), file).execute();
List
photoList = vk.photos().saveWallPhoto(actor, uploadResponse.getPhoto())
.server(uploadResponse.getServer())
.hash(uploadResponse.getHash())
.execute();
Photo photo = photoList.get(0);
String attachId = «photo» + photo.getOwnerId() + «_» + photo.getId();
GetResponse getResponse = vk.wall().post(actor)
.attachments(attachId)
.execute();
JsonElement response = vk.execute().code(actor, «return API.wall.get(<"count": 1>)»)
.execute();
"count":>
JsonElement response = vk.execute().storageFunction(actor, «foo»)
.funcV(2) // set storage function version
.unsafeParam(«user_id», 1) // set storage function argument
.execute();
JsonElement response = vk.execute().batch(actor,
vk.database().getChairs(1).count(10),
vk.database().getCities(1),
vk.groups().getMembers(actor).groupId(groupId)
).execute();
try <
vk.wall().post(actor)
.message(«Hello world»)
.execute();
> catch (ApiWallLinksForbiddenException e) <
// Links posting is prohibited
> catch (ApiException e) <
// Business logic error
> catch (ClientException e) <
// Transport layer error
>
String captchaSid = null;
String captchaImg = null;
try <
vk.wall().post(actor).message(«Hello world»).execute();
> catch (ApiCaptchaException e) <
captchaSid = e.getCaptchaSid();
captchaImg = e.getCaptchaImg();
>
//Show captcha image.
public class CallbackApiHandler extends CallbackApi <
@Override
public void messageNew(Integer groupId, Message message) <
System.out.println(message.getBody());
>
>
.
CallbackApiHandler callbackApiHandler = new CallbackApiHandler();
String body = httpRequest.getBody();
callbackApiHandler.parse(body);
//Init clients
TransportClient transportClient = new HttpTransportClient();
VkApiClient vkClient = new VkApiClient(transportClient);
VkStreamingApiClient streamingClient = new VkStreamingApiClient(transportClient);
//Create service actor
Integer appId = 4123123;
String accessToken = «sadf0asfsadfas»;
ServiceActor actor = new ServiceActor(appId, accessToken);
ΠΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ api Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ Π±Π°Π·ΠΎΠ²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ ΡΠ°Π±ΠΎΡΡ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈ ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΊ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Ρ Π½Π°ΡΠΈΠΌ API ΠΈΠ»ΠΈ Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ, ΠΈ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ, ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ Π²Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ°Π·Π΄Π΅Π» Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
API (application programming interface) β ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π΄Π½ΠΈΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΡΠ΅Π΄ΠΎΠΉ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ. API ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°Π±ΠΎΡ Π³ΠΎΡΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠΌΠ΅ΡΡΠΈΠΌΠΈΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ.
API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ β ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ vk.com Ρ ΠΏΠΎΠΌΠΎΡΡΡ http-Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΡΡ , ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Π° Π±Π°Π·Π°, ΠΈΠ· ΠΊΠ°ΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΠ°ΠΊΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΎΠ½Π° ΡΠΎΡΡΠΎΠΈΡ β Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ API-Π·Π°ΠΏΡΠΎΡ ΠΎΠ± ΡΡΠΎΠΌ Β«Π·Π½Π°Π΅ΡΒ». Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΡΠΈΠΏ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΈΠΌΠΈ Π΄Π°Π½Π½ΡΡ ΡΡΡΠΎΠ³ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ 210700286 Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡΡΠ°Π²ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:
ΠΡΠ²Π΅Ρ Π½Π° Π½Π°Ρ Π·Π°ΠΏΡΠΎΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΎΡΠ²Π΅ΡΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½Π°, ΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ API Π²Ρ Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π² ΠΏΠΎΠ»Π΅ id ΠΏΡΠΈΠ΄Π΅Ρ ΡΠΈΡΠ»ΠΎ, Π° Π² ΠΏΠΎΠ»Π΅ first_name β ΡΡΡΠΎΠΊΠ°. Π’Π°ΠΊΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΎΠ³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°Ρ
Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π² ΠΎΡΠ²Π΅ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, users.get β Π·Π΄Π΅ΡΡ ΠΎΠΏΠΈΡΠ°Π½Ρ Π²Ρ
ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈ ΡΡΡΡΠΊΡΡΡΠ° Π΅Π³ΠΎ ΠΎΡΠ²Π΅ΡΠ°, Π° Π·Π΄Π΅ΡΡ β user ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈΠ· ΠΎΡΠ²Π΅ΡΠ°.
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΈΠΌΠ΅Π΅ΡΠ΅ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ JSON, Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ JSON ΡΡ
Π΅ΠΌΠ΅ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅: JSON ΡΡ
Π΅ΠΌΠ° API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΠ±ΡΠ΅ΠΊΡ ΠΈΠ· ΠΎΡΠ²Π΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΡΠ½ΠΈΠΊΠ°Π»Π΅Π½ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ
Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π΅Π³ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΈ, Π²ΠΎΠ·ΡΠ°ΡΡΠ΅, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ°Ρ
, ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ Π² ΠΎΡΠ²Π΅ΡΠ΅ ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² users.get, users.search, groups.getMembers ΠΈ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
.
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ users.get, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ , Π½ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΌΠ°Π»ΠΎ. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π‘ΠΎΠ²Π΅Ρ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π²ΡΠ±ΡΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Standalone-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ Π΅Π³ΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡΠΎΠ²ΠΊΠΈ.
ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ β ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ, Π³Π΄Π΅ Π΅ΡΡΡ Π΄ΡΡΠΆΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΡΠ·ΠΈ, Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄Π°ΠΆΠ΅ ΡΠ΅ΡΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ. ΠΠ½ΠΎΠ³ΠΎΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΡΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ: ΠΊΡΠΎ-ΡΠΎ ΡΠ²ΠΈΠ΄ΠΈΡ Π½Π° Π½Π΅ΠΉ Π²ΡΡ ΡΡ ΠΆΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΡΠΎ ΠΈ Π²Π»Π°Π΄Π΅Π»Π΅Ρ, Π° ΠΊΡΠΎ-ΡΠΎ β Π»ΠΈΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
Π API ΡΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΡΠΊΡΡΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΠ²ΠΎΠΈΡ Π³ΡΡΠΏΠΏ ΠΎΡ Π½Π΅-Π΄ΡΡΠ·Π΅ΠΉ, ΡΠΎ ΠΈ ΡΠ΅ΡΠ΅Π· API Π²Π°ΡΠΈ Π½Π΅-Π΄ΡΡΠ·ΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΅Π³ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠ΅Π±ΡΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΠ΅ΡΠ²Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°ΡΡ, ΠΊΡΠΎ ΠΊ Π½Π΅ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ Π·Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΅Π΅ Π² ΡΠΎΠΌ ΠΆΠ΅ Π²ΠΈΠ΄Π΅, ΡΡΠΎ ΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ°ΠΉΡΠ°.
Π ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² API ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ access_token. Π’ΠΎΠΊΠ΅Π½ β ΡΡΠΎ ΡΡΡΠΎΠΊΠ° ΠΈΠ· ΡΠΈΡΡ ΠΈ Π»Π°ΡΠΈΠ½ΡΠΊΠΈΡ Π±ΡΠΊΠ², ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ. ΠΠ· ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²ΡΡ Π½ΡΠΆΠ½ΡΡ Π΅ΠΌΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½Π°, Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ΄Π°Π½ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½ΠΎ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ, ΠΈ ΡΡΠ°Π·Ρ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ.
ΠΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΡΡΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ (Implicit flow) ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΎΠΊΠ΅Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΈΠ· ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π²Π°ΠΌΠΈ Π½Π° ΠΏΡΠΎΡΠ»ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ Π² Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡ:
Π§ΠΈΡΠ»ΠΎ 5490057 Π² Π·Π°ΠΏΡΠΎΡΠ΅ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π½Π° API_ID Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Enter. ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ ΠΏΡΠ°Π². Π Π½Π΅ΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΠ°, ΠΈ Π²Π°ΡΠΈ ΠΈΠΌΡ Ρ ΡΠ°ΠΌΠΈΠ»ΠΈΠ΅ΠΉ.
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Β«Π Π°Π·ΡΠ΅ΡΠΈΡΡΒ». ΠΡ ΠΏΠΎΠΏΠ°Π΄Π΅ΡΠ΅ Π½Π° Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠΎΠΊΠ΅Π½ Π½Π΅Π»ΡΠ·Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΡΠ΅ΡΡΠΈΠΌ Π»ΠΈΡΠ°ΠΌ. Π Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π±ΡΠ΄Π΅Ρ URL https://oauth.vk.com/blank.html, Π° ΠΏΠΎΡΠ»Π΅ # Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ β access_token, expires_in ΠΈ user_id. Π’ΠΎΠΊΠ΅Π½ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ:
Π’ΠΎΠΊΠ΅Π½ β ΡΡΠΎ Π²Π°Ρ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ°. ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠΈΠΉ Π²Π°Ρ ΡΠΎΠΊΠ΅Π½, ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π½Π΅ΡΡΠΈ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΡΠ΅ΡΠ± Π²Π°ΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ ΠΈ Π΄Π°Π½Π½ΡΠΌ Π΄ΡΡΠ³ΠΈΡ Π»ΡΠ΄Π΅ΠΉ. ΠΠΎΡΡΠΎΠΌΡ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠΎΠΊΠ΅Π½ ΡΡΠ΅ΡΡΠΈΠΌ Π»ΠΈΡΠ°ΠΌ.
ΠΠΎΠ»Π΅ expires_in ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ ΡΠΎΠΊΠ΅Π½Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ . 86400 ΡΠ΅ΠΊΡΠ½Π΄ β ΡΡΠΎ ΡΠΎΠ²Π½ΠΎ ΡΡΡΠΊΠΈ. Π§Π΅ΡΠ΅Π· ΡΡΡΠΊΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΡΠΎΠΊΠ΅Π½ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π½Π΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ, Π΄Π»Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½ΠΎΠ²ΡΠΉ. ΠΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠΊΠ΅Π½ Π±Π΅Π· ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ β Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π² scope Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ offline. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠΎΠ·Π²Π°ΡΡ ΡΠΎΠΊΠ΅Π½ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΡΠ°Π» ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΏΠΎΡΡΠΎΡΠΎΠ½Π½Π΅ΠΌΡ), ΡΠ±ΡΠΎΡΠΈΠ² ΡΠ΅Π°Π½ΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΠΈΠ² ΠΏΠ°ΡΠΎΠ»Ρ. Π’Π°ΠΊΠΆΠ΅, Π΅ΡΠ»ΠΈ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΡΠΎΠΊΠ΅Π½Π΅ Π½Π΅ ΠΈΠ· Π²Π°ΡΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π½Π°ΡΡΡΠΎΠ΅ΠΊ: https://vk.com/settings?act=apps
ΠΠΎΠ»Π΅ user_id ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ id ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° ΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π΄ΡΡΠ·Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΉΡΠ°Ρ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Π²Π΅Π΄ΠΈΡΠ΅ Π² Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ:
ΠΈ Π²ΡΡΠ°Π²ΡΡΠ΅ ΠΏΠΎΡΠ»Π΅ Π·Π½Π°ΠΊΠ° «=» ΠΠ°Ρ access_token, Π·Π°ΡΠ΅ΠΌ Π½Π°ΠΆΠΌΠΈΡΠ΅ Enter. Π ΠΎΡΠ²Π΅ΡΠ΅ ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅ΡΠ½Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π²Π°ΡΠΈΡ Π΄ΡΡΠ·Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΎΠ½Π»Π°ΠΉΠ½. ΠΠΎΡΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π΄Π΅ΡΡ. ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, Π²Ρ Π½Π΅ ΡΠΊΠ°Π·Π°Π»ΠΈ Π² Π·Π°ΠΏΡΠΎΡΠ΅, Π΄Π»Ρ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (user_id) Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ β ΡΠ΅ΡΠ²Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Ρ.Π΅. Π²Π°Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ ΠΏΠΎΠ»ΡΡΠΈΠ» ΠΈΠ· ΡΠΎΠΊΠ΅Π½Π°.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄ΠΎΡΡΡΠΏΠ° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅, Π²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π΅Π»ΡΡΡΡ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ β friends, photos, video ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΠ°ΠΆΠ΄Π°Ρ ΡΠ΅ΠΊΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ°Π·Π΄Π΅Π»Ρ Π½Π° ΡΠ°ΠΉΡΠ΅. Π§Π°ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΡΠ°Π·Π΄Π΅Π»ΠΎΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ ΠΈΠ»ΠΈ Π΄Π»Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ. ΠΡΠΈ ΡΡΠΎΠΌ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π°ΡΠ΄ΠΈΠΎΠ·Π°ΠΏΠΈΡΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½Π΅ Π½ΡΠΆΠ΅Π½ Π΄ΠΎΡΡΡΠΏ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ ΠΊ Π΅Π³ΠΎ Π»ΠΈΡΠ½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌ.
ΠΠΎΡΡΠΎΠΌΡ Π² API ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·Π³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ, ΠΊΠ°ΠΊ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ Π³ΡΡΠΏΠΏΠ°ΠΌ, Π° ΠΌΠΎΠΆΠ΅Ρ β ΠΊ Π³ΡΡΠΏΠΏΠ°ΠΌ, ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΌ ΠΈ Π°ΡΠ΄ΠΈΠΎΠ·Π°ΠΏΠΈΡΡΠΌ. ΠΠ° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ.
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΏΡΠ°Π²Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ scope Π΄ΠΈΠ°Π»ΠΎΠ³Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΈ ΡΠΎΠΊΠ΅Π½ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π² scope Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ friends β ΠΈ Π² ΠΎΠΊΠ½Π΅ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠΈΠ»ΠΎ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄ΡΡΠ·ΡΡΠΌ.
Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° Π΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ («friends», «video» ΠΈ Ρ.Π΄.) ΠΈ ΠΊΠΎΠ΄ (+2, +4, +4096).
Π scope ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΡ Π½ΡΠΆΠ½ΡΡ
ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, scope=friends,video,photos), Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΌΠΌΡ ΠΈΡ
ΠΊΠΎΠ΄ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, scope=22). ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½Ρ Π΄Π²ΠΎΠΉΠΊΠΈ, ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΠΌΠΌΡ (Π±ΠΈΡΠΎΠ²ΡΡ ΠΌΠ°ΡΠΊΡ) Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (ΡΠΌ. account.getAppPermissions).
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Standalone-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Implicit Flow, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π½Π° ΡΡΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.
ΠΡ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΏΠΎΠ½ΡΡΠΈΡΠΌΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ Ρ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠ°Π»ΡΡΠ΅ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΡ Π»ΠΈΡΡ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΄ΠΎΡ Π½ΠΎΠ²Π΅Π½ΠΈΡ.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ API ΠΈΠ· ΡΠΎΡΠ΅Π΄Π½Π΅ΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, SDK, Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΠΊΠΎΠ΄Π°. Π‘Π°ΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ API Π²Π΅ΡΡΠΌΠ° ΠΏΡΠΎΡΡ, ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ http-Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π² Π»ΡΠ±ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: Π° Π·Π½Π°ΡΠΈΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΠΎΡΠ° Π²ΡΠ΅Π³Π΄Π° Π΅ΡΡΡ.
ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅
Π ΡΠ²ΠΎΡ Π²ΡΠ΅ΠΌΡ, Π±ΠΎΡΠΎΠ·Π΄Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΡΠ°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅, Ρ Π½Π΅ ΡΠΌΠΎΠ³ Π½Π°ΠΉΡΠΈ ΡΠ΅Π³ΠΎ-ΡΠΎ Π²ΡΠ°Π·ΡΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ, Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΠΌΠ½ΠΎΠΉ Π±ΡΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΡΡ
ΠΏΡΠ°ΠΊΡΠΈΠΊ ΠΈ Π±Π΅Π· ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π― ΡΠ΅ΡΠΈΠ» ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ, ΡΠ»ΠΎΠΆΠΈΠ²ΡΠ΅Π΅ΡΡ Π½Π΅Π΄ΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π» ΡΠ²ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΠΈΠ²ΠΎΡΡΠ΅ΠΏΠ΅ΡΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΈ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄Ρ ΠΏΠΎΠ΄ Ρ
Π°Π±ΡΠ°ΠΊΠ°ΡΠΎΠΌ.
Π’Π°ΠΊ ΡΠΆ ΡΠ»ΠΎΠΆΠΈΠ»ΠΎΡΡ, ΡΡΠΎ API ΠΠΊ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², ΠΎ ΠΊΠΎΡΠΎΡΡΡ Ρ ΡΠΏΠΎΠΌΡΠ½Ρ ΠΏΠΎΠ·Π΄Π½Π΅Π΅. ΠΠΎ ΡΠ΅ΡΡ, ΡΠ΅Π³ΠΎΠ΄Π½Ρ Π½Π΅ ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅, Π° ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.
Π‘ΡΠ°Π·Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΠ³ΠΎΠ²ΠΎΡΠΊΡ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ, Ρ Π±ΡΠ΄Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊΡΡΠΊΠΈ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΊ ΠΌΠΎΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, ΡΡΡΠ»ΠΊΡ Π½Π° ΠΊΠΎΡΠΎΡΡΡ Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ 5.5, Π΅ΡΠ»ΠΈ Π²ΡΡΠ΅Π·Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ, ΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° 5.4.
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠ½ΡΡΡ ΡΡΠΎ Π½Π΅ Ρ ΠΈΡΡΠΎΠ΅ Π΄Π΅Π»ΠΎ.
Π‘ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΈΠΌΠ΅Π΅ΠΌ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ°, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ API. ΠΠ±ΡΠ°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΡΠΎΡΡΠ°, Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π½Π° URL API. ΠΠ°ΠΏΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· Π±ΠΎΠ³Π°ΡΡΡ Π²Π΅ΡΠ΅ΠΉ API. Π Π½ΡΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΡΡΠ΅ΡΠΈΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΡΠ΅Π±ΡΡΡ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ° Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅, Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ.
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊ:
ΠΠ°ΡΠ° ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
Π§Π΅ΡΠ΅Π· Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π² each, ΠΏΡΠΎΠΉΠ΄ΡΡ ΡΠΎΠ²Π½ΠΎ 100 ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ ΠΎΡ 1 Π΄ΠΎ 100. ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, Π΅ΡΠ»ΠΈ ΠΌΡ ΡΠ±Π΅ΡΡΠΌ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΎ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π²ΡΡ ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²Π΅ΡΠ½ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ __call ΠΈ __get, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ Π΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
ΠΠ΄Π½Π° ΠΈΠ· Π²Π΅ΡΠ΅ΠΉ, ΡΡΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ, Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² β ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅. Π’ΠΎ Π΅ΡΡΡ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π½Π°ΠΌ Π½ΡΠΆΠ½Ρ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΠ‘Π Π½Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ ΠΏΠΎ 100. ΠΡΠ΄ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Ρ, ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡ Π²Π°Ρ ΠΏΡΠ°Π² Π΄Π»Ρ messages, Standalone ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΠΊΠΎΠΉ-ΠΆΠ΅ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΊΠ»ΡΡΠ° Π΄ΠΎΡΡΡΠΏΠ°.
Π₯ΠΎΡΠΎΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΡΠΊΠ°ΡΡ Π² API β execute. ΠΠ½ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ code Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°, code β Π½Π΅ΠΊΠΈΠΉ ΠΏΡΠ΅Π²Π΄ΠΎ JavaScript, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π°Ρ ΠΊΠΎΠ΄ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΡΠ°ΠΊ-ΠΆΠ΅ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΡ Π²Π΅ΡΡ Ρ Π½Π΅ ΡΠΌΠΎΠ³ ΠΎΠ±ΠΎΠΉΡΠΈ ΡΡΠΎΡΠΎΠ½ΠΎΠΉ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» Π΅Ρ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅. Π Π΄Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ , ΠΎΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½. Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°.
ΠΠ°ΠΊ ΠΈ ΠΎΠ±Π΅ΡΠ°Π», ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ΅Ρ Π½Π΅Π΄ΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ API(5.21), ΠΌΠ΅ΡΠΎΠ΄ users.get Π²Π΅ΡΠ½ΡΡ Π½Π°ΠΌ response, ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ², Ρ ΠΎΡΡ Π² Π΄ΡΡΠ³ΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ friends.get, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ Π½ΠΎΠΌΠ΅Ρ 5, Π½Π°ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠΎΠ»Ρ count ΠΈ items, ΠΌΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΡΠΎ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌ, ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π»ΠΈΡΠ½Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ API.
Π’Π°ΠΊ-ΠΆΠ΅ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Ρ Π²Π°ΡΠ΅ΠΉ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΡ
ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅.
Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΈΡΡΠ½ΠΎΠ³ΠΎ ΠΈ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° ΡΡΠΎ, ΡΠ°ΠΌΠΎΠ΅ Π²Π°ΠΆΠ½ΠΎΠ΅ Π² Π½Π°ΡΠ΅ΠΌ Π½Π΅ Π»ΡΠ³ΠΊΠΎΠΌ Π΄Π΅Π»Π΅.
ΠΠΏΠΎΠ»Π½Π΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠΎ Π² ΠΊΠΎΠ΄Π΅ ΠΎΡΡΠ°Π»ΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π½Π΅Π΄ΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π±Π°Π³ΠΈ, Π½Π°Π΄Π΅ΡΡΡ Π½Π° Π²Π°ΡΡ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ Pull Requests ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ²ΠΎΡΠΌ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΡ PSR-0.
ΠΠ°Π΄Π΅ΡΡΡ, ΠΌΠ½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ, ΡΡΠΎ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π΅ ΡΡΡΠ°ΡΠ½ΠΎ, Π° Π΄Π°ΠΆΠ΅ ΠΏΡΠΈΡΡΠ½ΠΎ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!
UPDATE:
ΠΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ΅Π· Composer: composer require «getjump/vk:*»
UPDATE 2:
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ 5.4, ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ(ΠΏΠΎ ΠΈΠ΄Π΅Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π°) ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΈ Π½Π° 5.3, Π΅ΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
ΠΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ api Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅
Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΌΠ΅ΡΠΎΠ΄Ρ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ POST ΠΈΠ»ΠΈ GET Π·Π°ΠΏΡΠΎΡ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ·ΠΎΠ²Π΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ users.get Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ 210700286:
Π ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ (Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ secure ΠΈ ads) Ρ ΠΊΠ»ΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Π½Π΅ ΡΠ°ΡΠ΅ 3 ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠ»Ρ ΠΊΠ»ΡΡΠ° Π΄ΠΎΡΡΡΠΏΠ° ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 20 Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΡΠ»ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ° ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ Π²ΡΠ·ΠΎΠ² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΠΎΠ΄ΡΡΠ΄, ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ execute. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ Π΄ΠΎ 25 ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ ΠΊ ΡΠ°Π·Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
ΠΠ»Ρ ΡΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π΄ΠΎΡΡΡΠΏΠ° Π»ΠΈΠΌΠΈΡΡ ΡΠ°ΠΊΠΈΠ΅:
ΠΠΎΠ»-Π²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | Π§Π°ΡΡΠΎΡΠ½ΡΠΉ Π»ΠΈΠΌΠΈΡ (ΠΊΠΎΠ»-Π²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ) |
---|---|
Π΄ΠΎ 10 000 | 5 |
Π΄ΠΎ 100 000 | 20 |
Π΄ΠΎ 500 000 | 40 |
Π΄ΠΎ 1ΠΌΠ»Π½ | 50 |
Π±ΠΎΠ»ΡΡΠ΅ 1ΠΌΠ»Π½ | 60 |
ΠΠ»Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠ΅ΠΊΡΠΈΠΈ ads Π΄Π΅ΠΉΡΡΠ²ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½ΠΈΠΌΠΈ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ ΠΊ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΡΠ΅ΠΊΡΠΈΠΈ secure Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΈΡΠ»Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ²ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ 10 000 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ 5 Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ, Π΄ΠΎ 100 000 β 8 Π·Π°ΠΏΡΠΎΡΠΎΠ², Π΄ΠΎ 1 000 000 β 20 Π·Π°ΠΏΡΠΎΡΠΎΠ², Π±ΠΎΠ»ΡΡΠ΅ 1 ΠΌΠ»Π½. β 35 Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΡΠ»ΠΈ ΠΡ ΠΏΡΠ΅Π²ΡΡΠΈΡΠ΅ ΡΠ°ΡΡΠΎΡΠ½ΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅ΡΠ½Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 6: «Too many requests per second.».
ΠΠΎΠΌΠΈΠΌΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠ°ΡΡΠΎΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° Π²ΡΠ·ΠΎΠ² ΠΎΠ΄Π½ΠΎΡΠΈΠΏΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ, ΠΌΡ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΡΠ½ΡΡ Π»ΠΈΠΌΠΈΡΠ°Ρ .
ΠΠΎΡΠ»Π΅ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π»ΠΈΠΌΠΈΡΠ° Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ Π²Π²ΠΎΠ΄Π° ΠΊΠ°ΠΏΡΠΈ (ΡΠΌ. captcha_error), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ (Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΡΠ·ΠΎΠ² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π½ΠΎ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π»ΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ).
ΠΠ°ΠΏΡΠΎΡΡ ΠΊ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΠΈΠ· Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΡΠΎ ΡΡΡΠ°Π½ΠΈΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΡΠ°ΠΉΡΠΎΠ² ΠΈΠ»ΠΈ IFrame ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
Π§ΡΠΎΠ±Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΊΡΠΎΡΡΠ΄ΠΎΠΌΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΊ API, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» JSONP. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΡΠΊΡΠΈΠΏΡ Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ° Π² src. ΠΠ°ΠΏΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ callback c ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·Π²Π°Π½Π° ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ-ΠΊΠ°Π½Π°Π» ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΈ Π±ΠΈΠ·Π½Π΅Ρ.
ΠΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΡΡΡΠΎΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ.
ΠΡΠ° ΡΡΠ°ΡΡΡ Π½Π΅ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² (ΠΎΠ½ΠΈ ΠΈ ΡΠ°ΠΊ ΡΠΆΠ΅ Π²ΡΡ ΡΡΠΎ Π·Π½Π°ΡΡ), Π° Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»ΠΈ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΡΠ»ΡΡΠ°Π» ΡΠ΅ΡΠΌΠΈΠ½ VK API, ΠΈ Ρ ΠΎΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ API
Π‘Π°ΠΉΡ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ ΠΈΠ»ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ° ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠ°ΠΉΡΠΎΠΌ β ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΡΠΈ, ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ, ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΡΠ΅ ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π΄Π»Ρ ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ (ΡΠΊΡΠΈΠΏΡΠΎΠ², ΠΊΠ°ΠΊ ΠΈΡ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ) ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΈ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ, ΡΠ»Π΅Π΄ΡΡ ΠΊΠΎΡΠΎΡΡΠΌ, ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π²ΡΠ·ΠΎΠ²Ρ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΡΠ²Π΅ΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ . Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅.
Π‘ΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΡΡΠΈΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ. ΠΠ³ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ API β Application Programming Interface.
ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ΡΠ΅Π· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ API, ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°. ΠΠ΅Π· ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΡΡΡΠΎΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΠ΅Π΄Ρ ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΈΠΌΠ΅Π» Π±Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΈΡΠΌΠ° Π²Π½Π΅ΡΠ½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π²ΡΠ΄Π°ΡΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ². ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΡΡ Π΄Π²ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, ΠΈ Π²Π΅ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π±ΡΠ» Π±Ρ ΠΏΠΎΡ ΠΎΡΠΎΠ½Π΅Π½ ΠΏΠΎΠ΄ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠΉ ΠΊΡΡΠ΅ΠΉ ΡΠ°Π·Π½ΠΎΡΠΎΠ΄Π½ΡΡ ΠΏΡΠ°Π²ΠΈΠ». Π Π°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² Π½ΠΈΡ Π½Π΅ Π±ΡΠ»ΠΎ Π±Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΡΠ»ΠΈ ΠΆΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π·Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· API, ΡΠΎΠ³Π΄Π° Π²ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Ρ ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ.
Π§Π΅ΠΌ ΠΆΠ΅ ΡΡΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΡΠ°ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈ Ρ ΠΎΡΠ΅Ρ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠ΅Π±Ρ?
ΠΠ΄Π΅ Π½Π°ΠΉΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ VK Api
Π‘ΠΎΡΡΠ΅ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ API Π΄Π»Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠ»Π°Π²Π½Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΡΡΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²ΠΎΡ Π·Π΄Π΅ΡΡ: https://vk.com/dev/manuals. Π’ΡΡ ΠΎΠΏΠΈΡΠ°Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊΠΎΠ΄ΠΎΠ² ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ°, ΡΠ°Π±Π»ΠΎΠ½Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, ΠΆΠ΅Π»Π°ΡΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΠΎΠ΅ Π²Π½ΡΡΡΠΈ ΠΠ Π»ΠΈΠ±ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅) ΠΌΠΎΠΆΠ΅Ρ Π² ΠΊΠΎΠ΄Π΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ·ΠΎΠ²Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΠ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΈ ΡΠ°ΠΌΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ API. ΠΡΠΎ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ² ΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°, Π΄Π΅Π»Π°ΡΡ ΠΌΠ°ΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΡΡΡΠ»ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ, ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π΄Π΅ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΠΎΠΊΠΈΠ΅. ΠΠΌΠ΅Π½Π½ΠΎ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ API ΠΠ ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ»Π΅Π΅ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΡ ΠΌΡΠ·ΡΠΊΠΈ ΠΈΠ· ΡΡΡΠ°Π½ΠΈΡ Π΄ΡΡΠ·Π΅ΠΉ, ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΠΈΠ³ΡΡ, ΡΡΡΡΡΠΈΠΊΠΈ Β«ΠΠΎΠΈ Π³ΠΎΡΡΠΈΒ», Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ VK Settings, VK Coffee, Kate Mobile ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΡΠ°ΡΡΠΈ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅, ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΎΠ±ΡΠΈΡΠ½Π°. ΠΡ Π·Π΄Π΅ΡΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π·Π°Π΄Π°Ρ.
ΠΡΠΈΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ API VK Π½Π° PHP
Π‘Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΊ ΠΠ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ https://vk.com/apps?act=manage. ΠΡΠΎΠΉΠ΄Ρ ΠΏΠΎ Π½Π΅ΠΉ, Π½ΡΠΆΠ½ΠΎ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Β«Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Β».
ΠΠ°Π»Π΅Π΅ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΈΠΏ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅, ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ (stand-alone), ΠΈΠ»ΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅. ΠΡΠ»ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²Π²Π΅ΡΡΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ°ΠΉΡΠ° ΠΈ Π±Π°Π·ΠΎΠ²ΡΠΉ Π΄ΠΎΠΌΠ΅Π½.
Π Π»ΡΠ±ΠΎΠΌ ΠΈΠ· ΡΡΡΡ ΡΠ»ΡΡΠ°Π΅Π² ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° Π½ΠΎΠ²ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΠΊΡΡΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Β«ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈΒ». Π’Π°ΠΌ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°: ID ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΉ ΠΊΠ»ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ:
ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½ ΡΡΡΠ»ΠΊΡ Π΄Π»Ρ ΠΎΡΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ° access_token:
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, Π·Π½Π°ΠΊΠΎΠΌΡΠ΅ Ρ ΡΠ·ΡΠΊΠΎΠΌ PHP ΡΠ²ΠΈΠ΄ΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Β«ID ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΒ» ΠΈ Β«ΠΠ°ΡΠΈΡΡΠ½Π½ΡΠΉ ΠΊΠ»ΡΡΒ», ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΠ΅ oauth.vk.com, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ°. ΠΠ½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ API ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΠΌΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠΎ ΡΡΠΈΠ»ΠΈΡ ΡΡΠΎΡΡ ΡΠΎΠ³ΠΎ β ΠΏΠΎΡΠ²ΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΈΡΠ°ΡΡ Π»ΡΠ±ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ³ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ Π΄Π²ΠΈΠΆΠΎΠΊ ΠΠ. ΠΡΠΈΡΡΠΌ Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠ°Π·Π½ΠΈΡΡ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ β PHP, Pithon, JavaScript, C# ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΡΡΠΎ Π±Π΅Π·ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ, Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΠ±Π»ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ².