Računala Windows Internet

Dobivanje tokena za pristup vk. Što je VK token. Primjeri rada s api vk

Društvene mreže postale su bitan alat za promociju web stranice. Za promociju stranice putem društvenih mreža. mreža bi trebala stvoriti grupu ili stranicu ove stranice. Steknite pretplatnike, objavite vijesti na zidu i još mnogo toga (ovo je tema za zasebnu bilješku). Mnogi od ovih procesa mogu se automatizirati korištenjem API-ja (Aplikacijsko programsko sučelje) dotične društvene mreže. U ovoj ću bilješci analizirati kako se povezati na vk api (vkontakte), kako početi raditi s vk api, a također ću dati neke primjere rada s api vkontakte.

Izrada aplikacije VKontakte

I zato krenimo. Vk api ima mnogo metoda, ali jedna od njihovih glavnih razlika je u tome što je za upućivanje zahtjeva VK api-u putem nekih metoda potreban poseban pristupni ključ - token (access_token). Možete ga dobiti kreiranjem svoje aplikacije. Nudi nam se nekoliko vrsta aplikacija, ali ja biram samostalnu vrstu. dosta mi je toga. Za početak izrade aplikacije slijedite vezu i uđite u sljedeći prozor.


Ovdje odabiremo vrstu i naziv naše aplikacije. Pritisnemo spoji aplikaciju i dobijemo SMS s kodom na telefonski broj povezan s VK računom iz kojeg kreiramo aplikaciju. Unesite ga i idite na sljedeći prozor. U ovom prozoru idite na karticu postavki.


Na kartici postavki vidimo polja s nazivom ID-a aplikacije i sigurnosnim ključem. Te podatke negdje zapisujemo. Nisam radio ništa drugo u karticama. Stanje aplikacije je ostavljeno u isključenom položaju. Kliknite Spremi postavke. To je to, stvorili smo aplikaciju VKontakte.

Dobivanje tokena (access_token) api VK

https://oauth.vk.com/authorize?client_id= &prikaz= [pogled prozora]&redirect_uri=https://oauth.vk.com/blank.html&scope= [prava na aplikaciju]&response_type=token&v=5.52

  • client_id - ID naše aplikacije primljene ranije.
  • display - vrsta prozora u kojem će se izvršiti autorizacija. Može biti stranica, popup, touch i wap
  • opseg - prava pristupa naše aplikacije u vezi s korisničkim podacima. Više o pravima u nastavku.

Prava aplikacije VK u odnosu na određenog korisnika mogu se postaviti u tekstualnom i digitalnom obliku. U tekstu će izgledati kao opseg=prijatelji,poruke,grupe. Ovom linijom koda omogućili smo vk aplikaciji pristup korisničkim prijateljima, porukama i grupama. Ista prava postavljena su u digitalnom obliku. Za svako pravilo postoji bitmaska ​​i zbroj tih maski i omogućit će aplikaciji izvođenje određenih radnji. Na primjer, pravi prijatelji (+2), poruke (+4096), grupe (+262144), kao rezultat toga, zbroj bitnih maski bit će 266242, a opseg=266242 kod će biti analogan opsegu=prijatelji,poruke , grupe . Želim obratiti posebnu pozornost na offline pravo. Ako postavite ovo pravo, token koji primamo postaje beskonačan. Ako se ovo pravo ne postavi nakon određenog vremena, token će se morati ponovno primiti. Više o pravima VK aplikacije možete pročitati ovdje. Kao rezultat, sastavimo adresu za primanje tokena za aplikaciju s pravima pristupa prijateljima, porukama i korisničkim grupama, kao i s besmrtnim tokenom. Neka ID aplikacije bude 123456. Ova adresa će izgledati ovako:

https://oauth.vk.com/authorize?client_id=123456&display=page&redirect_uri=https://oauth.vk.com/blank.html& scope=friends,messages,groups,offline&response_type=token&v=5.52


Potvrđujemo radnju i dolazimo na stranicu s upozorenjem, uzimamo primljeni token iz adresne trake preglednika. Bit će to nakon #access_token= , expires_in=0 kod nam govori da je token (access_token) api vk besmrtan. Sukladno tome, user_id= je id korisnika za kojeg smo primili token.

Idemo na postavke računa na kartici postavki aplikacije i pogledajte našu aplikaciju.


Sada imamo sve spremno za rad s API-jem VKontakte.

Primjeri rada s api vk

Za rad s api VK koristim programski jezik php. Stoga ću dati primjere u php. Da bismo izvršili bilo kakvu radnju, moramo poslati zahtjev na api vk. Također možemo poslati zahtjev putem adresne trake preglednika. To jest, zahtjev je određena url adresa s određenim parametrima navedenim u njoj. Sintaksa za sastavljanje takvog URL-a opisana je u nastavku.

Https://api.vkontakte.ru/ method/[POZIVANA METODA]?[PARAMETRI POZIVANE METODE]

Popis api vk metoda je ovdje. Za sada se nećemo više fokusirati na to, onda će sve biti jasno na stvarnim primjerima. Ostaje samo shvatiti kako poslati zahtjev na VKontakte api pomoću php. Za to ćemo koristiti php funkciju file_get_contents, kao i funkciju json_decode, budući da ćemo odgovor od poslužitelja dobiti u json formatu. Ovdje je predložak za izvršavanje zahtjeva za VK u php.

$result=json_decode(file_get_contents("https://api.vkontakte.ru/metoda/[POZIVANA METODA]?[PARAMETRI POZIVANE METODE]"));

dobro, sada nekoliko primjera rada s api vk

$useid=12345; $mytoken=56789; /*vraća objekt sa spolom i rođendanom korisnika*/ $request_params = array("user_id" => $userid, "fields" => "sex", "fields" => "bdate"); $get_params = http_build_query($request_params); $result = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); /*provjera je li korisniku zabranjen pristup VK*/ $request_params = array("user_id" => $user_id, "fields" => "deaktivirano"); $get_params = http_build_query($request_params); $result = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); if(isset($result->response->deactivated))( echo "Stranica je zamrznuta ili izbrisana"; ) /*pošalji poruku korisniku s user_id=222222*/ $mesage="Bok, kako si?"; //kodiranje stringa $msg=urlencode($mesage); $result = json_decode(file_get_contents("https://api.vkontakte.ru/method/ messages.send?user_id=222222& message=".$msg."&access_token=".$mytoken)); /* pozvati korisnika s user_id=222222 kao prijatelja*/ $mesage="Hajde da budemo prijatelji"; $msg=urlencode($mesage); $result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/friends.adduser_id=222222& text=".$msg."&access_token=".$mytoken));

API ima puno metoda, pa vam savjetujem da pročitate dokumentaciju. Naravno, upiti se ne izvode uvijek ispravno i vraćaju kodove grešaka. Pogreške se mogu vidjeti ovdje. Dakle, jednostavno se možete spojiti na api vk i automatizirati svoje radnje u kontaktu.

Što je VK token? U današnje vrijeme tehnologija se razvija vrlo brzim tempom. U isto vrijeme društvene mreže dobivaju ogroman zamah. Nemati račun na barem jednoj od društvenih mreža više nije moguće za svaku osobu, barem među mladima i djevojkama. Svaki dan se nadopunjuju terabajtima fotografija, videozapisa, pa čak i primitivne jedinice znanja o tekstu.

No, nažalost, malo ljudi zna za posebne "čipove" ovog resursa. Netko tamo zaista provodi malo vremena, nekome jednostavno ne predstavljaju potrebu.
Jedan od tih značajnih je takozvani "token" na ovoj društvenoj mreži, malo korisnika zna što je VK token.

Što je token za pristup u VKontakteu.

VK token je dugačak niz koji se sastoji od znakova: brojeva i slova latinične abecede. Čini se da tu nema ništa posebno, ali daje velike mogućnosti korisniku koji ga je aktivirao.

Na primjer, napišite određene poruke određenoj osobi, prikažite vječnu online svoju stranicu, kao da uvijek sjedite na stranici. Potonja opcija daje veliki plus, jer je nedavno nevidljivost u kontaktu uklonjena i uz pomoć tokena nitko neće moći točno shvatiti kada ste bili na mreži, jer se prikazuje cijelo vrijeme. Postavite status, napišite na zidu itd.

Kako dobiti VKontakte token.

Proces dobivanja tokena provodi se putem aplikacije. Morate ga sami izraditi, to možete učiniti tako da slijedite link vk.com/apps?act=manage i kliknete na gumb za kreiranje. Unesite što god želite u naslov. Odaberite prvu vrstu. Zatim prolazimo kroz potvrdu putem mobilnog telefona.

Izaći će stranica vaše aplikacije, odaberite "Postavke" i na vrhu će biti dugačak niz zvjezdica i id.

https://oauth.vk.com/authorize?client_id=5563738&scope=notify,fotografije,prijatelji,audio,video,bilješke,stranice,dokumenti,status,pitanja,ponude,zid,grupe,poruke,obavijesti,statistika,oglasi, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token


Kako saznati svoj token u kontaktu.

Nakon dovršetka svega navedenog, pojavit će vam se prozor u kojem se sa svime slažete i kliknite na gumb "Dopusti".

Čini se da je teško, ali zapravo svatko može dobiti token u VK, drugo je pitanje zašto? 99% korisnika VK-a, njegovo znanje apsolutno nije potrebno. Također vas žurimo upozoriti da ne dajete i ne unosite svoj token na sumnjive resurse, inače bi vaša stranica mogla biti u rukama napadača. Na primjer, možete biti pretplaćeni na razne grupe ili zajednice bez vašeg znanja, staviti vas u sumnjiv status ili objaviti poruku u svoje ime na svom zidu

Sve češće se na tržištu pojavljuju softverski proizvodi za VKontakte u obliku online usluga, mobilnih ili računalnih aplikacija, pa čak i skripti koje zahtijevaju autorizaciju računa putem access_tokena. U nekim slučajevima sami ti programi ili usluge omogućuju dobivanje pristupnog ključa potrebnog za autorizaciju u nekoliko klikova. Ali što ako ste preuzeli skriptu, ali nemate ključ access_token da bi radila?

Kako dobiti access_token?

Razmotrit ćemo način autorizacije na društvenoj mreži VKontakte putem izravne veze putem VKontakte API-ja (temeljenog na OAuth protokolu), tzv. implicitni tok. Autorizacija ovom metodom provodi se putem aplikacije VKontakte, navedene kao ID. Ovo je najsigurnija metoda provjere autentičnosti. Na internetu možete pronaći veliki broj članaka, poput ovog, o dobivanju access_tokena putem raznih sumnjivih aplikacija. Ići ćemo na druge načine - analizirat ćemo metode autorizacije putem vlastite aplikacije ili službene aplikacije VKontakte.

Način da dobijete token je da slijedite posebnu vezu koja sadrži ID neke aplikacije VKontakte, u obliku:

Citat

200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id= APP_ID&scope=notify,fotografije,prijatelji,audio,video,bilješke,stranice,dokumenti,status,pitanja,ponude,zid,grupe,poruke,obavijesti,stats,ads,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token


Cijelo je pitanje gdje ovo nabaviti APP_ID. Kao što sam obećao, razmotrit ćemo 2 načina:
  • Dobivanje tokena putem vlastite aplikacije.

    Ova metoda dobivanja tokena podrazumijeva da imate vlastitu aplikaciju. U tom slučaju preskočite nekoliko koraka. Krenut ćemo od činjenice da nemate svoju aplikaciju, što znači da je trebate izraditi. Da biste to učinili, idite na stranicu za upravljanje svojim aplikacijama koristeći vezu vk.com/apps?act=manage i kliknite na gumb " Napravite aplikaciju».


    Unesite naziv za buduću aplikaciju, na primjer, " Dobivanje access_tokena', provjerite potvrdni okvir' Samostalna aplikacija” i kliknite na gumb “ Povezivanje aplikacije».


    Zatim ćete morati odobriti aplikaciju tako što ćete primiti potvrdni kod na svoj telefon i unijeti ga u posebno polje. Također, tijekom postupka odobravanja aplikacije, svoj mobilni uređaj možete povezati sa svojim VKontakte računom. Da biste to učinili, kliknite na gumb " Povezivanje uređaja". U suprotnom, samo kliknite na link " Potvrdite putem SMS-a» bez povezivanja uređaja sa stranicom.


    Nakon potvrde, vidjet ćete stranicu s podacima o kreiranoj aplikaciji. U izborniku s lijeve strane kliknite na " Postavke". Tu je vaš tzv klijent_id, odnosno ID vaše aplikacije VKontakte.


    Umjesto toga, ovaj ID treba kopirati i zalijepiti u našu vezu APP_ID. Trebalo bi izgledati otprilike ovako:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=5563738&scope=notify,fotografije,prijatelji,audio,video, bilješke, stranice, dokumenti, status, pitanja, ponude, zid, grupe, poruke, obavijesti, statistika, oglasi, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token


    5563738 je ID naše aplikacije. Imat ćete sličan broj.
  • Dobivanje tokena putem službene aplikacije VKontakte.

    Ova metoda je apsolutno identična prethodnoj, osim što ne stvarate vlastitu aplikaciju, već koristite već stvorenu, službenu aplikaciju VKontakte kojoj možete vjerovati.

    Kao primjer, uzet ćemo aplikaciju VKontakte za Android. Njegov ID je sljedeći: 2890984 . Kao rezultat toga, ako ga zamijenite u vezu, poprimit će sljedeći oblik:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=2890984&scope=notify,fotografije,prijatelji,audio,video, bilješke, stranice, dokumenti, status, pitanja, ponude, zid, grupe, poruke, obavijesti, statistika, oglasi, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Time smo završili dio koji se odnosi na identifikator (ID) aplikacije koja se koristi za autorizaciju. Ali još treba razjasniti par stvari.

  • Omogućite primljeni access_token trećim stranama.
  • Prođite autorizaciju kroz sumnjive aplikacije (pored vlastite ili službene).
  • Nakon korištenja generiranog access_tokena, izbrišite ga. Ako je potrebno, uvijek možete generirati novu.
  • Završite sve aktivne sesije u sigurnosnim postavkama svog VKontakte računa. Ovo je brz način da onemogućite sve aktivne tokene za pristup (access_token).
A sada, nakon što ste pročitali gornje informacije, možete početi stvarati vlastitu aplikaciju za generiranje vašeg access_tokena ili slijedite vezu za generiranje access_tokena putem VKontakte Android aplikacije pomoću gumba u nastavku:

Nabavite access_token

Pokušavam dobiti token. Pročitao dokumentaciju, ništa nisam razumio. Što učiniti?

Tokeni su API pristupni ključevi. Koriste se za autorizaciju prilikom upućivanja zahtjeva API-ju.

Tokeni vam omogućuju ograničavanje pristupa korisničkim podacima pomoću parametra opsega. Definira opseg vaše aplikacije. Token s opseg=prijatelji daje pristup prijateljima i ničemu drugom. Dakle, token postaje manje opasan od korisničkog imena i lozinke.

Kako dobiti a

Token se može dobiti izravno iz preglednika. Da biste to učinili, samo trebate slijediti ispravnu vezu. Kako napraviti ispravan link:

1. Napravite samostalnu aplikaciju.

  • redirect_uri nije potrebno specificirati. Ne trebate web stranicu, aplikacija je klijentska.
  • ostaviti response_type i prikazati kao u primjeru.
  • client_id koji ste dobili u drugom koraku.
  • v uzeti iz Stranice verzije API-ja. Odaberite najnovije.

opseg odabira ovisno o metodama koje želite koristiti. Na primjer, za pristup metodi

Nedavno se pojavio ogroman broj internetskih usluga, računalnih ili mobilnih aplikacija, skripti koje su dizajnirane za VKontakte, ali za njihov rad morate proći kroz autorizaciju access_token.

Neke usluge pružaju mogućnost dobivanja pristupnog ključa, koji je potreban za autorizaciju. Ovo traje nekoliko sekundi. Ali što ako ste prenijeli skriptu, ali nedostaje potreban ključ access_token?

Kratke upute za dobivanje tokena zajednice

Idite na postavke zajednice. (ako nemate zajednicu, onda je):

1. Rad s API-jem > 2. Uzmi ključ > 3. Kopirajte ga (ovo je ključ (token) i access_token zajednice)

To je sve. A ako vam je potreban korisnički token, sve potrebne informacije nalaze se ispod u članku.

Nabavite token putem aplikacije:

Gdje mogu dobiti access_token?

Danas ćemo analizirati kako se prijaviti na VKontakte pomoću izravne veze. API VKontakte (na temelju protokola OAuth) ili, kako se još naziva, implicitni tok. Autorizacija, ako koristite ovu metodu, vrši se putem VK aplikacije, koja je označena kao iskaznica. Danas se ova metoda smatra najsigurnijom. Možda ćete naići na članke koji govore o metodama dobivanja access_token korištenjem aplikacija koje izazivaju (i to s dobrim razlogom!) sumnju. Ali danas ćemo govoriti o tome kako se prijaviti putem službenih aplikacija VKontakte.

APP_ID

Ako se ovo riješi, prirodno se pojavljuje sljedeće pitanje: gdje nabaviti ovaj link?

✅ Dobivanje tokena putem vlastite aplikacije.

  • Korištenje vlastite aplikacije. Ova metoda je očito dizajnirana za činjenicu da imate aplikaciju vlastitog dizajna. Ako ga nemate, sada je vrijeme da ga kreirate. Vrlo je jednostavno to učiniti: samo slijedite vezu vk.com/apps?act=manage i kliknite na " Napravite aplikaciju».

Sustav će od vas tražiti da unesete naziv aplikacije. Kao primjer, možete koristiti " Dobivanje access_tokena". Provjerite je li potvrdni okvir " Samostalna aplikacija". Zatim kliknite na " Povezivanje aplikacije».

Za potvrdu prijave morat ćete unijeti kod koji ćete dobiti na navedeni telefonski broj. U ovoj fazi izrade aplikacije možete popraviti mobilni uređaj na VK stranicu. Da biste to učinili, kliknite na " Povezivanje uređaja". To možete učiniti bez povezivanja s računom. Tada samo trebate slijediti poveznicu " Potvrdite putem SMS-a».

Nakon što potvrdite registraciju, otvorit će se stranica koja sadrži podatke o kreiranoj aplikaciji. Pritisnite " Postavke“, koji se nalaze u lijevom kutu. Tu se nalazi client_id - ID aplikacije VKontakte.

https://oauth.vk.com/authorize?client_id= 5563738 &scope=notify,fotografije,prijatelji,audio,video,bilješke,stranice,dokumenti,status,pitanja,ponude,zid,grupe,poruke,obavijesti,stats,ads,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token

5563738 je ID aplikacije koju ste kreirali. Dobit ćete sličnu kombinaciju. Nakon što smo kreirali aplikaciju, prijeđimo na samo pitanje.

Dobivanje tokena putem službene VK aplikacije.

Metoda se razlikuje od ranije opisane, samo po tome što ne morate kreirati vlastitu aplikaciju. Iskoristite ono što već imate. Može mu se 100% vjerovati.

Metoda će se razmotriti na primjeru VKontaktea za Android. ID ovako: 2890984 . To je ta kombinacija koja se mora zamijeniti u poveznici.

Dobit ćete sljedeće:

https://oauth.vk.com/authorize?client_id= 2890984 &scope=notify,fotografije,prijatelji,audio,video,bilješke,stranice,dokumenti,status,pitanja,ponude,zid,grupe,poruke,obavijesti,stats,ads,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token

Ovim je završen dio članka u kojem smo pogledali opcije identifikacije aplikacije koje se mogu koristiti za autorizaciju. Ostalo je da se dotaknemo samo nekoliko stvari:

✅ Prava pristupa:

  • U gore opisanim primjerima, parametar opseg sadrži mnoga imena odjeljaka društvene mreže VKontakte: audio, fotografije, obavijesti, prijatelji. Ovo su odjeljci koji će biti otvoreni za aplikaciju. Access_token se može koristiti na razne načine. ID koji koristite pripada pouzdanoj aplikaciji. Zato možete stvoriti access_token koji ima sva prava pristupa. Postaje svestran tako da se može koristiti svugdje.

✅ access_token:

Posljednje pitanje koje se treba dotaknuti je to kako doći do samog ključa access_token . Nakon što primite vezu (koristeći jednu od metoda), morat ćete je slijediti da biste otvorili pravo pristupa.

Nakon toga, potreban ključ će se pojaviti u vašoj adresnoj traci. Kopira se ručno: nakon access_token= i prije &expires_in.

Pa, vrijedi završiti s nekoliko savjeta:

  • Ne dijelite ključ access_token s trećim stranama.
  • Ne biste trebali prolaziti kroz autorizaciju pomoću aplikacija koje nisu pouzdane. Preporuča se koristiti samo svoje ili službene.
  • Izbrišite ključ nakon što ste ga upotrijebili. Uvijek možete kreirati novi ako je potrebno.
  • Sve aktivne sesije treba prekinuti kada više nisu potrebne. To možete učiniti putem sigurnosnih postavki računa.