Vývojári VKontakte. Čo je VKontakte API a prečo je to potrebné? Trieda pre prácu s VK API

Niekedy nastanú situácie, ktoré sa dajú vyriešiť len kontaktovaním správy sociálnej siete.

Predtým ako napíšte technickej podpore na VKontakte zamyslite sa znova, problém môžete vyriešiť aj bez toho, aby ste to urobili.

Čakanie na odpoveď od technickej podpory môže trvať dlhšie 24 hodín. A informácie o problémoch VKontakte nájdete aj na internete. Všetky otázky sú riešené na našej webovej stránke.

Ale ak chcete, alebo osoba za konanie nezákonnej povahy, potom takéto problémy možno posúdiť iba prostredníctvom technickej podpory.

1. Aby kontaktujte technickú podporu VK Vo svojom profile prejdite do sekcie „Pomocník“.

  • V pravom hornom rohu kliknite na svoj avatar;

2. Zapíšte si problém, s ktorým ste sa stretli.

  • Akonáhle napíšete problém, budete čeliť spôsoby, ako to vyriešiť;

3. Ak metódy nevyriešia váš problém, kliknite na tlačidlo "Toto nerieši môj problém."



  • Ak takéto tlačidlo neexistuje, choďte odkaz ;

5. Teraz podrobne opísať situáciu a pošlite otázku na posúdenie.


  • Čím viac informácií poskytnete, tým väčšia je šanca, že vám pomôže rýchlo vyriešiť problém;

To je všetko, teraz nám ostáva už len čakať odpoveď technickej podpory VKontakte.

Ak ste boli napadnutí, požiadajte o napísanie svojej technickej podpory priateľ/príbuzný z jeho účtu (). Urobte to isté, ak je stránka zablokovaná.

Stratený prístup k telefónu, na ktorý je stránka prepojená? Agent podpory vám pomôže so skenovaním pasu.

Snažia sa vás oklamať? Vydieraný? Odosielanie fotografií? Napíšte na technickú podporu, existuje cesta von.

V prípade potreby napíšte technickej podpore VK zo svojho telefónu, potom by ste mali vykonávať podobné akcie iba z mobilnej aplikácie:

1. Stiahnite si pre iOS, Android alebo Windows Phone a prejdite na kartu.

Najprv si definujme, čo je VK API a aké možnosti nám poskytuje. VKontakte API - umožňuje vývojárovi interagovať priamo s databázou VKontakte pomocou špeciálnych http požiadaviek. Ako to môže byť užitočné pre nás ako vývojárov? Pomocou API môžeme získať širokú škálu informácií o používateľoch, skupinách, príspevkoch na stene, fotografiách a oveľa viac. Služba má samozrejme určité obmedzenia, viac o tom nižšie.

Hneď vás varujem, článok nie je pre začiatočníkov a niektoré body nebudem vysvetľovať, keďže článok bude veľmi dlhý. Týmito článkami chcem len ukázať princíp práce s VK API a príkladmi kódu. A kód bude samozrejme dostupný na github.

základné informácie

Prvá vec, ktorú potrebujeme na vytvorenie našej aplikácie, je ísť https://vk.com/dev. Ďalej ideme na "Moje aplikácie" a stlačte tlačidlo "Vytvoriť aplikáciu". VKontakte vám umožňuje zaregistrovať 3 typy aplikácií, ich stručný popis:

  • Samostatná aplikácia- toto je pre mobilných klientov, desktopové programy a stránky, kde sa interakcia s API bude vykonávať z Javascriptu.
  • webové stránky- ak chcete napísať skript pre webovú stránku, ktorá bude používať API, označte túto možnosť.
  • Aplikácia IFrame/Flash- hry na VKontakte atď.

Napíšeme názov aplikácie, vyberieme typ „Webová stránka“, v adrese stránky a základnej doméne uvedieme skutočnú adresu vašej stránky a domény. Ak vyvíjate lokálne, môžete zadať http://localhost.

Vytvorenie aplikácie

Naša aplikácia bola vytvorená, teraz v sekcii úprav prejdite na „Nastavenia“. Táto stránka bude obsahovať údaje, ktoré potrebujeme, napr id, chránený kľúč A servisný kľúč. To všetko je potrebné na autorizáciu používateľa. Algoritmus na interakciu s API je veľmi jednoduchý:

  1. Používateľ autorizuje účet VK v aplikácii.
  2. Dostane špeciálny token.
  3. Vytvára požiadavky na API.

Teraz musíme skutočne napísať kód, ktorý nám umožní interakciu s API. Budeme písať v PHP so zahrnutím niektorých knižníc. Budeme potrebovať skladateľ, ak ho nemáte nainštalovaný, môžete si ho stiahnuť kliknutím na tento odkaz.

V priečinku projektu vytvorte súbor skladateľ.json a zapíšte doň nasledovné:

( "require": ( "slim/slim": "^3.0", "twbs/bootstrap": "4.0.0-alpha.6", "illuminate/database": "^5.4", "slim/twig-view ": "^2.2", "guzzlehttp/guzzle": "~6.0" ) )

Uložíme súbor, otvoríme konzolu a prejdeme do priečinka s naším projektom, ktorý obsahuje súbor, ktorý sme vytvorili. Spustite príkaz na inštaláciu skladateľa.
Týmto príkazom sme nainštalovali Slim mini framework, Bootstrap pre rýchle rozloženie, balík pre prácu s databázou a šablónový engine.

Štruktúra aplikácie

Štruktúra je veľmi jednoduchá a obsahuje niekoľko súborov a priečinkov.

  • aplikácie— pre nastavenia aplikácie budeme v tomto priečinku uchovávať trasy, triedy a iné súbory nastavení.
  • verejnosti— hlavný priečinok obsahujúci súbor index.php a súbory štýlov
  • zdrojov- priečinok pre pohľady

Vytváranie súborov

public/index.php

spustiť ();

V tomto súbore spustíme iba našu aplikáciu, všetky nastavenia sa vykonajú v iných súboroch. Toto je náš vstupný bod.

app/app.php

obsahovať "../vendor/autoload.php"; // Ladenie $config = [ "settings" => [ "displayErrorDetails" => true, "LogLevel" => "debug", "vk" => [ "client_id" => "ID VAŠEJ APLIKÁCIE", "client_secret" = > "TAJNÝ KĽÚČ VAŠEJ APLIKÁCIE", "redirect_uri" => "http://vk-tutor.com/authorize", "display" => "popup", "scope" => "priatelia,stena,offline" ", " response_type" => "code" ] ], ]; $app = new Slim\App($config); // DI pre zobrazenie vetvičky $container = $app->getContainer(); $container["view"] = funkcia ($container) ( $view = new \Slim\Views\Twig("../resources/views", [ "cache" => false ]); $basePath = rtrim(str_ireplace ("index.php", "", $container["request"]->getUri()->getBasePath()), "/"); $view->addExtension(new Slim\Views\TwigExtension($container[ "router"], $basePath)); return $view; ); zahrnúť "classes/VK.php"; // Trasy vyžadujú "routes.php";

Nezúfajte, nie je to nič zložité. Jednoducho pripojíme loader, vložíme závislosť na používanie Twig a zahrnieme súbor s trasami.

app/routes.php

get("/", funkcia ($request, $response) ( $vk = new VK($this->get("settings")["vk"]); if (isset($_SESSION["vk"]) ) ( if (!isset($_SESSION["account"])) ( // Nastavenie tokenu $vk->accessToken = $_SESSION["vk"]->access_token; // Získanie informácií o aktuálnom používateľovi // Záznam všetky informácie do relácie $_SESSION["account"] = $vk->getAccountInfo($_SESSION["vk"]->user_id); ) návrat $this->view->render($response,"index.html", [" vk" => $vk, "account" => $_SESSION["account"]->response]); ) return $this->view->render($response,"index.html", ["vk " = > $vk]); )); $app->get("/authorize", funkcia ($request, $response) ( // Skontrolujte, či je v paneli s adresou kód, ak ($request->getQueryParam("code") != NULL) ( $vk = new VK($this->get("settings")["vk"]); // Získanie tokenu $_SESSION["vk"] = $vk->getAccessToken($request->getQueryParam("code") ); ) return $response->withStatus(302)->withHeader("Location", "../"); ));

Teraz je naša aplikácia úplne pripravená na použitie. Ak chcete vykresliť stránku, musíte šablónu umiestniť do adresára resources/views. Môžeme začať písať samotný kód, čo nám umožní interakciu s VKontakte API. Keďže budeme musieť zadávať HTTP požiadavky na API, nainštaloval som Guzzle. Toto je HTTP klient, ktorý nám umožní veľmi jednoducho vykonávať HTTP požiadavky na vkontakte.

Trieda pre prácu s VK API

client_id = $params["client_id"]; $this->client_secret = $params["client_secret"]; $this->redirect_uri = $params["redirect_uri"]; $this->display = $params["zobrazenie"]; $this->scope = $params["rozsah"]; $this->response_type = $params["response_type"]; ) verejná funkcia getLoginLink() ( $params = [ "client_id" => $this->client_id, "redirect_uri" => $this->redirect_uri, "scope" => $this->scope, "response_type" => $ this->response_type ]; return $this->loginUrl . http_build_query($params); ) verejná funkcia getAccessToken($code) ( $client = new \GuzzleHttp\Client(); $response = $client->request("POST) ", $this->queryUrl, [ "form_params" => [ "client_id" => $this->client_id, "client_secret" => $this->client_secret, "redirect_uri" => $this->redirect_uri, "code " => $code, ], "verify" => false, ]); $data = json_decode($response->getBody()); return $data; ) verejná funkcia getAccountInfo($id) ( $url = "https ://api.vk.com/method/users.get"; $client = new \GuzzleHttp\Client(); $response = $client->request("POST", $url, [ "form_params" => [ "user_ids" => $id, "fields" => "photo_50,counters", "name_case" => "Nom", "access_token" => $this->accessToken ], "verify" => false ]); $ data = json_decode($response->getBody()); return $data; ))

Napísal som malú triedu, ktorá zatiaľ vie iba autorizovať používateľa.
Metóda getLoginLink() generuje prihlasovací odkaz, metóda getAccessToken() požaduje prístupový token a posledná metóda getAccountInfo() načítava informácie o autorizovanom používateľovi.

Tým je logika aplikácie dokončená a keď sa používateľ prihlási, dostaneme pole s používateľskými údajmi v relácii a môžeme ich zobraziť.
Odkedy som sa pripojil Vetvičkašablóny, moje šablóny sú napísané v súboroch html, ale môžete použiť bežné súbory php alebo iný nástroj na šablóny.

Kód súboru na zobrazenie informácií.

(% extends "layout/app.html" %) (% block content %)

(% ak účet %)

účtu


(% pre účet na účte %)
(( acc.first_name )) (( acc.last_name ))
Priatelia: (( acc.counters.friends ))
Nasledovatelia: (( acc.counters.followers ))
(% endfor %) (% else %)

Autorizovať používateľa


Autorizácia (% endif %)
(%endblock%)

Rámec štíhly veľmi dobre sa hodí na vytváranie malých aplikácií a API pre vaše projekty, preto som ho použil v tomto článku a budem ho používať aj naďalej. V ďalšom článku sa pozrieme na to, ako môžete získať príspevky zo steny v skupine a spracovať ich.

Tí, ktorí sa rozhodnú vyvíjať aplikácie pre VKontakte, sa skôr či neskôr budú musieť vysporiadať s takou koncepciou, ako je API (application programming interface), čo doslova znamená aplikačné programovacie rozhranie.

Jednoduchšie - API ide o celý komplex rôznych hotových funkcií, hotových tried, konštánt atď., ktoré sa dajú použiť v tretích stranách. VKontakte API sa neustále vylepšuje a dnes je to už plne funkčná sada doplnkov, ktorá to umožňuje.

Podrobnú dokumentáciu si môžete prečítať tu.
Posledná globálna transformácia tohto vývojového prostredia bola vykonaná v apríli 2009. Samozrejme, aj potom bola stránka neustále upravovaná. Všimnime si hlavné funkcie rozhrania API VKontakte

  1. Rozhranie API umožňovalo aplikáciám prístup k priateľom, ich fotografiám a videám. Aplikácie môžu teraz vytvárať albumy a umiestňovať do nich informácie. Toto sa predtým nestávalo. Dôležité je, že pri inštalácii takejto aplikácie sa používateľ rozhodne, či mu dá prístup k osobným údajom alebo nie.
  2. Odosielanie upozornení aplikáciami. Áno, niekedy je to nepríjemné vyskakovacie upozornenie v ľavej dolnej časti obrazovky je implementovaný aj pomocou API.
  3. Pozývanie priateľov do aplikácií je tiež jednoduchšie vďaka Prgramovacie prostredie aplikácií, na ktorom bola táto funkcia hromadného pozvania implementovaná. Následne sa tieto pozvánky začali využívať na reklamu.
  4. Reklama od VK zmizla zo stránok aplikácie. Teraz sa vývojár hry alebo programu pre VK sám rozhodne, či potrebuje reklamu na svojom flash disku. Ak áno, má právo umiestniť svoj vlastný a prijímať z neho 100% zisk.
  5. Ako to nazvali vývojári VK, používatelia integrujúci aplikácie získali prístup k vnútornej ekonomike siete. Jednoducho povedané, sprístupnilo sa API, ktoré to umožňuje používajte VKontakte ako interné platby.
  6. Príležitosť spúšťanie aplikácií v režime celej obrazovky. Zvýšenie maximálnej veľkosti rámu umožnilo umiestniť ďalšie bannery s reklamou, takže vývoj aplikácií pre VK dnes nie je len potešením, ale aj celkom ziskovou činnosťou pri rozhodovaní o reklame a predaji bannerov.
  7. Aplikácie tretích strán sa teraz šíria a prostredníctvom spravodajského kanála. Toto je ďalší krok k ich popularizácii. Navyše (aj keď to bolo už dávno, pre aplikáciu sa sprístupnila miniatúrna ikonka).
  8. Poradie výstupu aplikácie implementované aj pomocou API. Dnes sú štandardne tie hry, ktoré sa spúšťajú najčastejšie, na vašich prvých pozíciách. Tie, ktoré ste dlho nepoužívali, nájdete na konci zoznamu.
  9. Vďaka API sa stal dostupným a podrobné vstavané štatistiky. Dnes môžete jednoducho spočítať návštevníkov, zobrazenia stránky, pohlavie, vek, polohu používateľa aplikácie. Všetky informácie sú prezentované čo najnázornejším spôsobom, vo forme flash grafov, ktoré sú okamžite zostavené. Toto bolo robené predovšetkým pre reklamu (predaj reklamného priestoru). Získate štatistiky, vidíte, že aplikáciu používajú desaťtisíce ľudí. Ukážete to inzerentovi, ktorý pravdepodobne bude chcieť za banner v takejto aplikácii zaplatiť.
  10. Pre najpopulárnejšie aplikácie to bolo možné registrácia krátkych subdomén(napríklad chat.vk.com a podobne) pre ľahké zapamätanie a rýchly prístup.
  11. No konečne sa naskytla príležitosť zobrazovanie informácií na osobných stránkach používateľov.

Nedávno som začal písať články so zameraním na požiadavky používateľov sociálnej siete Vkontakte, takže ešte raz spýtal „Ako napísať technickú podporu na VKontakte? A napíšem článok, aby som nabudúce mohol poslať odkaz ako odpoveď.

Ak máte problém s VKontakte, napríklad stránka nie je prístupná, bola hacknutá alebo sa neprehráva hudba, neodporúčam okamžite bežať na technickú podporu. prečo?

  1. Technická podpora VKontakte je pomalá, zvyčajne môžete problém vyriešiť sami rýchlejšie.
  2. Existuje šanca, že nedostanete normálnu pomoc; pošlú vás hľadať informácie.
  3. Väčšinu problémov spojených s VKontakte je možné vyriešiť bez toho, aby ste ich kontaktovali. Pravidelne píšem články, v ktorých riešim problémy používateľov, nájdete ich v sekcii. Alebo použite vyhľadávanie v blogu.

Ako napísať technickú podporu VKontakte?

Predstavme si, že sa vyskytol problém, ktorý môže vyriešiť iba kontaktná technická podpora, napríklad vám bola ukradnutá stránka! Prvá vec, ktorú musíte urobiť, je nájsť stránku technickej podpory VKontakte; adresu už niekoľkokrát zmenili. Aktuálny odkaz je tento http://vk.com/support?act=new.

Zobrazí sa vám táto stránka, v poli označenom šípkou môžete položiť akúkoľvek otázku, ktorá vás zaujíma. Nižšie je tiež uvedené riešenie najpopulárnejších otázok, ako napríklad,?

Kontakty a čísla technickej podpory na VKontakte

Môžete tiež kontaktovať technickú podporu prostredníctvom e-mailu nižšie a zverejním e-mail samotnej technickej podpory a ľudí, ktorí sa tým zaoberajú. Bohužiaľ, technická podpora VKontakte nemá telefónne číslo, volanie a riešenie vašich problémov nebude fungovať.

Email: [chránený e-mailom]– Kontakt na technickú podporu
Email: [chránený e-mailom]– Gayane Manukyan
Email: [chránený e-mailom]– Maxim Babichev

Prajem vám veľa šťastia v boji s technickou podporou, ak sa vyskytnú problémy, napíšte do komentárov.

Ak vám tento článok pomohol alebo sa vám páčil, nezabudnite daj like, pomôže to ostatným používateľom nájsť ho rýchlejšie. A môžem zistiť, čo vás najviac zaujíma, aby som mohol pripraviť a napísať ešte zaujímavejšie a užitočnejšie články! S pozdravom, Vyacheslav.