Token de pagină VK. Ce este un token VK

Ce este un token VK? În zilele noastre, tehnologia se dezvoltă într-un ritm foarte rapid. În același timp, rețelele de socializare capătă un avânt enorm. A nu avea un cont pe cel puțin o rețea de socializare nu mai este posibil pentru fiecare persoană, cel puțin în rândul tinerilor și fetelor. În fiecare zi, ele sunt umplute cu terabytes de fotografii, videoclipuri și chiar o unitate primitivă de cunoaștere a textului.

Ce este un token VK

Dar, din păcate, puțini oameni știu despre „trucurile” speciale ale acestei resurse. Unii oameni chiar petrec puțin timp acolo, în timp ce alții pur și simplu nu au nevoie de ele.
Unul dintre aceste lucruri notabile este așa-numitul „token” din această rețea socială; puțini utilizatori știu ce este un token VK.

Ce este un token de acces pe VKontakte.

Jetonul VK este sfoară lungă, formată din simboluri: cifre și litere ale alfabetului latin. S-ar părea că nu are nimic special la el, dar oferă mari oportunități utilizatorului care l-a activat.

De exemplu, scrieți anumite mesaje unei anumite persoane, afișează eternul online al paginii tale, de parcă ai fi mereu pe site. Ultima varianta este un mare plus, pentru ca recent a fost eliminata invizibilitatea din Contact si cu ajutorul token-ului nimeni nu va putea intelege exact cand ai fost online, deoarece este afisat constant. Setați o stare, scrieți pe perete etc.

Cum să obțineți un token VKontakte.

Procesul de obținere a unui token se realizează prin intermediul aplicației. Trebuie să îl creați singur; acest lucru se poate face urmând linkul vk.com/apps?act=manage și făcând clic pe butonul de creare. Putem pune orice vrei în titlu. Alegem chiar primul tip. Apoi, trecem prin confirmare folosind un telefon mobil.

Apare pagina aplicației dvs., selectați „Setări” și va apărea un set lung de stele și un ID deasupra acestuia.

https://oauth.vk.com/authorize?client_id=5563738&scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici,reclame, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Cum să aflați jetonul în contact.

După ce ați finalizat toate cele de mai sus, va apărea o fereastră în care sunteți de acord cu totul și faceți clic pe butonul „Permite”.

Pare dificil, dar de fapt oricine poate obține un token pe VK, o altă întrebare este de ce? 99% dintre utilizatorii VK nu au deloc nevoie de cunoștințele sale. De asemenea, ne grăbim să vă avertizăm să nu dați sau să introduceți token-ul pentru resurse dubioase, altfel pagina dvs. poate ajunge în mâinile unui atacator. De exemplu, vă pot abona la diferite grupuri sau comunități fără știrea dvs., vă pot oferi un statut îndoielnic sau vă pot publica un mesaj pe perete în numele dvs.

ÎN În ultima vreme apare o cantitate mare servicii online, computer sau aplicatii mobile, scripturi care sunt destinate VKontakte, dar pentru ca acestea să funcționeze trebuie să fiți autorizat jeton de acces.

Unele servicii oferă posibilitatea de a obține o cheie de acces, care este necesară pentru autorizare. Acest lucru durează câteva secunde. Dar ce se întâmplă dacă ați descărcat scriptul, dar nu aveți cheia access_token necesară?

De unde pot obține access_token?

Astăzi vom analiza cum să vă conectați la VKontakte folosind un link direct API VKontakte (bazat pe protocol OAuth) sau, cum se mai spune, Fluxul implicit. Autorizarea, dacă utilizați această metodă, se face prin aplicația VK, care este indicată ca ID. Astăzi, această metodă este considerată cea mai sigură. Este posibil să întâlniți articole care vorbesc despre metode de obținere jeton de acces folosind aplicații care provoacă (și din motive întemeiate!) suspiciuni. Dar astăzi vom vorbi despre cum să vă conectați prin aplicațiile oficiale VKontakte.

APPLICATION_ID

Dacă înțelegeți acest lucru, apare în mod firesc următoarea întrebare: de unde pot lua tocmai acest link?

Primirea unui token prin aplicație proprie.

  • Folosind propria aplicație. Această metodă este în mod evident concepută pentru faptul că aveți o aplicație propria dezvoltare. Dacă nu aveți unul, acum este momentul să îl creați. Acest lucru este foarte ușor de făcut: trebuie doar să urmați linkul vk.com/apps?act=manageși faceți clic pe " Creați o aplicație».

Sistemul vă va cere să introduceți un nume pentru aplicație. Ca exemplu, puteți folosi „ Se obține access_token" Verificați dacă " Aplicație autonomă" Apoi, faceți clic pe „ Conectați aplicația».

Pentru a confirma aplicația, va trebui să introduceți codul care vă va fi trimis. numărul specificat telefon. În această etapă a creării aplicației, vă puteți angaja dispozitiv mobil la pagina VK. Pentru a face acest lucru, trebuie să faceți clic pe „ Conectați dispozitivul" Este posibil fără a fi conectat la un cont. Atunci trebuie doar să urmezi linkul „ Confirmați prin SMS».

După ce vă confirmați înregistrarea, se va deschide o pagină care oferă informații despre aplicația care a fost creată. Presa " Setări", care se află în colțul din stânga. Acolo este situat client_id – ID-ul aplicației VKontakte.

https://oauth.vk.com/authorize?client_id= 5563738 &scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici,anunţuri,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token

5563738 este ID-ul aplicației pe care ați creat-o. Veți ajunge cu o combinație similară. Pentru a obține cheia de acces, pur și simplu urmați linkul furnizat.

Primirea unui token prin cerere oficială VK.

Metoda diferă de cea descrisă mai devreme doar prin faptul că nu trebuie să vă creați propria aplicație. Utilizați ceea ce a fost deja creat. Poți avea încredere în el sută la sută.

Metoda va fi luată în considerare folosind exemplul VKontakte pentru Android. ID-ul este cam asa: 2890984 . Această combinație trebuie înlocuită în legătură.

Veți obține următoarele:

https://oauth.vk.com/authorize?client_id= 2890984 &scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici,anunţuri,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token

Aceasta se încheie partea articolului în care am analizat opțiunile de identificare a aplicației care pot fi utilizate pentru autorizare. Au mai rămas doar câteva puncte de atins:

✅ Permisiuni:

  • În exemplele descrise mai sus, parametrul domeniul de aplicare conține multe titluri de secțiuni rețea socială VKontakte: audio, fotografii, notificare, prieteni. Acestea sunt secțiunile care vor fi deschise aplicației. Access_token poate fi folosit în diferite moduri. ID-ul pe care îl utilizați îi aparține aplicație de încredere. Acesta este motivul pentru care puteți crea un access_token care are toate drepturile de acces. Devine universal, astfel încât să poată fi folosit peste tot.

✅ access_token:

Ultima întrebare care trebuie atinsă este cum să obțineți direct cheia în sine jeton de acces. După ce primiți linkul (folosind una dintre metode), va trebui să faceți clic pe el pentru a deschide drepturile de acces.

După aceasta, în dvs bara de adresa va apărea cheia necesară. Este copiat manual: după access_token= și înainte de &expires_in.

Ei bine, merită să închei cu câteva sfaturi:

  • Nu dați cheia access_token unor persoane neautorizate.
  • Nu ar trebui să vă conectați folosind aplicații care nu sunt de încredere. Se recomandă să folosiți doar cele proprii sau oficiale.
  • Scoateți cheia după ce ați folosit-o. Dacă este necesar, puteți oricând să creați unul nou.
  • Toate sesiuni active ar trebui completate după ce nu mai sunt necesare. Puteți face acest lucru prin setările de securitate a contului dvs.

Totuși, acest articol ia în considerare o aplicație desktop în Java ca exemplu principii generale iar schema va fi similară pentru orice altă limbă.

Cum apare autorizarea?

Autorizarea pe VKontakte nu este diferită de orice altă autorizare prin intermediul unui server terță parte. Acest proces a fost descris perfect de un utilizator StackOverflow qnub:

  1. Pe serviciu (în în acest caz, VK) trebuie să înregistrați aplicația și să obțineți o cheie API.
  2. După aceasta, aplicația (site-ul) poate solicita datele personale ale utilizatorului de la un serviciu terță parte prin același API, pentru care:
    • redirecționează utilizatorul (browserul utilizatorului trimițându-i un răspuns HTTP de redirecționare 302) prin link special generat la un serviciu care furnizează un API;
    • utilizatorul va efectua unele acțiuni acolo, probabil se va autentifica și va permite accesul la date.
  3. La finalizarea acțiunilor, utilizatorul va fi redirecționat serviciu terț folosind aceeași redirecționare 302 către adresa URL transmisă în parametri link special generat.

Primul pas. Înregistrați-vă aplicația și obțineți o cheie

Acest pas este cel mai simplu. Trebuie să accesați pagina VK pentru dezvoltatori: https://vk.com/dev- și faceți clic pe butonul „Creați aplicație”. Indicăm tipul ca „Aplicație autonomă”; numele, desigur, este arbitrar. După aceasta, în secțiunea „Aplicațiile mele”(ce crezi?) va apărea aplicația ta. Simțiți-vă liber să faceți clic pe „editați”, apoi accesați secțiunea „Setări” - acolo, în prima linie, veți vedea inscripția „ID aplicație: 1234567 " Aceste numere sunt tot ce trebuie să vă amintiți pentru a vă conecta.

Rețineți că nu are rost să ascundeți ID-ul aplicației - acesta este afișat public, de exemplu, atunci când postați un mesaj pe perete prin această aplicație. Nici jetoanele și nici alte informații nu pot fi furate folosind un ID. În general, puteți chiar să utilizați ID-ul aplicației mele (dacă trebuie să scrieți scenariu mic pentru mine).

Pasul doi. Generarea unei legături speciale

În continuare, trebuie să direcționați utilizatorul către o adresă special generată (mențiunile acesteia sunt evidențiate cu caractere aldine în prima secțiune a articolului), unde acesta va confirma că dorește să permită aplicației dumneavoastră să efectueze unele acțiuni cu contul său. Cum se formează această legătură?

Acest proces este descris în detaliu în documentație. Cu toate acestea, dacă ați apelat la acest articol, presupun că nu ați avut suficiente informații în documentație și, prin urmare, voi repeta totul în propriile mele cuvinte. Link-ul are următoarea vedere: gazdă?parametri. Parametrii iau forma mai multor perechi cheie=valoare separate prin simboluri &.

Gazda rămâne întotdeauna aceeași: https://oauth.vk.com/authorize. Setul de parametri este, de asemenea, neschimbat:

  • client_id. Aici merită să indicați aceleași numere pe care le-am obținut în primul pas.
  • redirect_uri. Adresa către care va fi redirecționat utilizatorul. Pentru aplicațiile autonome, acesta este doar https://oauth.vk.com/blank.html.
  • afişa. Acest parametru determină modul în care va fi afișată pagina de conectare. Există trei opțiuni disponibile: pagină, pop-up și mobil. Dacă nu ești sigur, folosește pagina .
  • domeniul de aplicare. În acest parametru, ar trebui să enumerați parametrii de acces de care aveți nevoie, separați prin virgule. Lista plina parametri disponibili dat pe pagina corespunzătoare documentație. Vă rugăm să rețineți că nu trebuie să specificați absolut nimic și pur și simplu nu scrieți acest parametru. Pentru a afla ce opțiuni de acces aveți nevoie, uitați-vă la documentarea metodei pe care urmează să-l folosești.
  • tip_răspuns. Specificăm jetonul și mergem mai departe.
  • v. Versiunea API. Actual - 5.59 .

https://oauth.vk.com/authorize?client_id=1&display=page&redirect_uri=http://example.com/callback&scope=friends&response_type=token&v=5.59

Pasul trei. Ce urmeaza?

http://REDIRECT_URI#access_token= JETON 3&expires_in= TIMP&user_id= ID

Suntem interesati de JETON. Cum să direcționați utilizatorul către o pagină dintr-o aplicație Java și cum să obțineți adresa paginii către care VK îl va redirecționa (pentru a extrage un token din aceasta)? Există două moduri.

Dacă decideți să mergeți pe această rută, atunci pur și simplu deschideți browserul implicit al sistemului cu linkul pe care l-ați primit mai sus și spuneți cumva utilizatorului că ar trebui să copieze jetonul de pe adresa URL și să-l lipiți într-un câmp. Evident, această metodă are UX teribil, dar poate fi implementată rapid și ușor. Este destul de potrivit dacă scrieți o aplicație pentru dvs. - pentru a descărca muzică sau a primi notificări. Se implementează după cum urmează:

Public String askToken(String link) aruncă IOException, URISyntaxException( //Deschide linkul în browser implicit Desktop.getDesktop().browse(new URI(link)); //Solicită utilizatorului să introducă simbolul din browser manual return JOptionPane.showInputDialog(" Vă rugăm să introduceți access_token param din browser: "); )

Burghez, prin componente web

Dacă decideți să mergeți pe această cale, va trebui să utilizați o bibliotecă GUI terță parte (sau cel puțin JavaFX) care are propria sa componentă de browser. Programul dvs. va avea putere deplină asupra unui astfel de browser și veți putea recupera adresa către care VK v-a redirecționat, software. În JavaFX, acest lucru poate fi implementat după cum urmează:

Import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.scene.Scene; import javafx.scene.web.WebEngine; import javafx.scene.web.WebView; import javafx.stage.Stage; public class Main extinde Aplicația (public final static String REDIRECT_URL = "https://oauth.vk.com/blank.html"; public static final String VK_AUTH_URL = ""; //A FACE!!! public static String tokenUrl; public static void main(String args)( System.out.println(Main.getTokenUrl()); ) public static String getTokenUrl())( lansare(Main.class); return tokenUrl; ) @Override public void start(Stage primaryStage ) aruncă Excepție ( vizualizare finală WebView = nou WebView(); motor final WebEngine = view.getEngine(); engine.load(VK_AUTH_URL); primaryStage.setScene(new Scene(view)); primaryStage.show(); engine.locationProperty ( ).addListener(nou ChangeListener ()( @Override public void a fost modificat (ObservableValueobservabil, String oldValue, String newValue) (​if(newValue.startsWith(REDIRECT_URL))( tokenUrl=newValue; primaryStage.close(); ) ) ); ) )

Concluzie

Astfel, am învățat cum să obținem un token de acces VKontakte, cu ajutorul căruia puteți apela metode API. Dacă acest articol trezește interesul comunității, în articolul următor voi descrie cum să apelezi anumite metode API folosind un token, cum să verifici validitatea unui token (metoda secure.checkToken(), desigur) și să scriu câteva un fel de aplicație demonstrativă, de exemplu, pentru a salva toată muzica dintr-o listă de redare pe computer. Apropo, nu uitați că, de fapt, totul a fost inventat înaintea noastră și există deja biblioteci pentru lucrul cu API-ul VK pentru aproape orice limbă. Avem, în care am încercat să colectăm cele mai bune dintre ele.

Dacă aveți idei sau întrebări, bine ați venit la comentarii (le citesc și răspund tuturor). De asemenea, puteți pune întrebări

Din ce în ce mai des, produse software pentru VKontakte apar pe piață sub formă de servicii online, aplicații mobile sau de calculator și chiar scripturi care necesită autorizarea contului prin access_token. În unele cazuri, aceste programe sau servicii în sine fac posibilă obținerea cheii de acces necesare pentru autorizare în câteva clicuri. Dar dacă ați descărcat scriptul, dar nu aveți cheia access_token pentru a-l folosi?

Cum să obțineți access_token?
Vom lua în considerare o metodă de autorizare în rețeaua socială VKontakte folosind o legătură directă prin API-ul VKontakte (bazat pe protocolul OAuth), numită Fluxul implicit. Autorizarea folosind această metodă se realizează prin aplicația VKontakte, specificată ca ID. Aceasta este cea mai sigură metodă de autentificare. Pe Internet puteți găsi un număr mare de articole ca acesta despre obținerea access_token prin diverse aplicații suspecte. Vom lua alte căi - ne vom uita la metodele de autorizare prin propria noastră aplicație sau aplicația oficială VKontakte.

Metoda pentru obținerea unui token este să urmați un link special care conține ID-ul unei aplicații VKontakte, astfel:

Citat

200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id= APPLICATION_ID&scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici,anunţuri,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token


Întrebarea este de unde să obțineți asta APPLICATION_ID. După cum am promis, ne vom uita la 2 metode:
  • Primirea unui token prin propria aplicație.

    Această metodă de obținere a unui token presupune că aveți propria dvs. aplicație. În acest caz, sări peste câțiva pași. Vom pleca de la faptul că nu aveți propria aplicație, ceea ce înseamnă că trebuie să o creați. Pentru a face acest lucru, trebuie să accesați pagina pentru gestionarea aplicațiilor dvs. folosind linkul vk.com/apps?act=manageși faceți clic pe " Creați o aplicație».


    Introduceți un nume pentru viitoarea aplicație, de exemplu, „ Se obține access_token", asigurați-vă că " Aplicație autonomă" și faceți clic pe butonul " Conectați aplicația».


    În continuare, va trebui să aprobi cererea primind un cod de confirmare pe telefon și introducându-l într-un câmp special. De asemenea, în timpul procesului de aprobare a aplicației, vă puteți conecta dispozitivul mobil la contul dvs. VKontakte. Pentru a face acest lucru, faceți clic pe butonul " Conectați dispozitivul" În caz contrar, faceți clic pe linkul " Confirmați prin SMS» fără a conecta dispozitivul la pagină.


    După confirmare, veți vedea o pagină cu informații despre aplicația creată. În meniul din stânga, faceți clic pe elementul „ Setări" Aici este așa-numitul tău client_id, adică ID-ul aplicației tale VKontakte.


    Acest ID trebuie copiat și lipit în linkul nostru APPLICATION_ID. Ar trebui să arate cam așa:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video, note, pagini, documente, stare, întrebări, oferte, perete, grupuri, mesaje, notificări, statistici, anunțuri, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token


    5563738 – acesta este ID-ul aplicației noastre. Veți avea un număr similar.
  • Primirea unui token prin aplicația oficială VKontakte.

    Această metodă este absolut identică cu cea anterioară, cu excepția faptului că nu vă creați propria aplicație, ci folosiți o aplicație oficială VKontakte deja creată, în care puteți avea încredere.

    Ca exemplu, vom lua aplicația VKontakte pentru Android. ID-ul său este următorul: 2890984 . Ca rezultat, înlocuindu-l în link, va lua următoarea formă:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video, note, pagini, documente, stare, întrebări, oferte, perete, grupuri, mesaje, notificări, statistici, anunțuri, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Aceasta încheie partea referitoare la identificatorul aplicației (ID) utilizat pentru autorizare. Dar mai sunt câteva puncte de clarificat.

Nu recomandăm cu insistență:
  • Furnizați access_token-ul primit terților.
  • Treceți autorizarea prin aplicații dubioase (în afară de cea proprie sau cea oficială).
De asemenea, vă recomandăm cu căldură:
  • După ce utilizați access_token-ul generat, ștergeți-l. Dacă este necesar, puteți genera întotdeauna unul nou.
  • Încheiați toate sesiunile active în setările de securitate ale contului dvs. VKontakte. Aceasta este o modalitate rapidă de a dezactiva toate access_token-urile active.
Și acum, după ce ați citit informațiile de mai sus, puteți începe să vă creați propria aplicație pentru a vă genera access_token sau urmați linkul pentru a genera un access_token prin aplicația VKontakte pentru Android folosind butonul de mai jos:

Dezvoltatorii trebuie să se ocupe destul de des cu aplicații și servicii care, în procesul de interacțiune cu rețeaua socială VKontakte, necesită o cheie de acces - access_token.

În acest tutorial ne vom uita la două metode foarte asemănătoare pentru a-l obține.

Cum va funcționa procesul?

Tot ce trebuie să facem este să înlocuim id-ul aplicației în adresa URL. De asemenea, este posibil să editați secțiuni la care permitem accesul prin access_token-ul creat.

În esență, vom crea o adresă URL gata făcută și vom înlocui id-ul a două aplicații diferite. Acest lucru va face diferența. După aceasta, vom urmări linkul pregătit și vom primi o cheie de acces.

Link pentru a obține cheia

Iată adresa URL finală. Aici ne interesează în primul rând datele de după semnul =. În exemplul de mai jos, scrie ID aplicație. Noi, la rândul nostru, vom înlocui un anumit număr acolo.

Https://oauth.vk.com/authorize?client_id=ID-applications&scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici, ads,offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

De asemenea, acordați atenție datelor de după cuvântul „sfera de aplicare”. Aici listăm secțiunile la care cheia le va da acces. Pentru a împiedica aplicațiile să acceseze secțiunea cu prietenii noștri, eliminați textul „prieteni” din link. Restul este prin analogie.

Acum nu mai rămâne decât să obțineți actul de identitate.

Obținem identitatea prin propria noastră aplicație

Pentru a-l crea, trebuie să mergem la secțiunea corespunzătoare disponibilă în contul de dezvoltator. Urmați linkul de acolo.

https://vk.com/apps?act=manage

Și apăsați butonul „Creează o aplicație”.

Specificați numele și tipul aplicației (vezi). Apoi faceți clic pe butonul „Conectează aplicația”.

Recent, toate operațiunile din contul de dezvoltator trebuie confirmate prin SMS. În fereastra care se deschide, selectați „Confirmare prin SMS”. Primiți codul pe telefonul mobil, apoi introduceți-l în formular.

Aplicația va fi creată. Acum accesați fila Setări. Aici, în bloc, va fi indicat setul de numere de care avem nevoie. Copiați-l.

Acum avem tot ce ne trebuie.

Folosim ID-ul aplicației oficiale VKontakte

A doua modalitate de a obține un ID este să luați pur și simplu o aplicație gata făcută. Și cel mai bine, aplicația oficială VKontakte pentru Android. ID-ul lui este „2890984”. O poți folosi.

Primim Access_token

Https://oauth.vk.com/authorize?client_id=2890984&scope=notify,fotografii,prieteni,audio,video,note,pagini,documente,stare,întrebări,oferte,perete,grupuri,mesaje,notificări,statistici,reclame, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

În browser se va deschide o pagină cu o notificare care indică faptul că nu trebuie să furnizați cheia de acces terților. Și în bara de adrese a browserului - cheia generată. Este între valorile „access_token=" și „&expires_in”. Copiați-l.

Concluzie

Cheia poate fi actualizată prin repetarea pașilor descriși. Abține-te de la distribuirea acestuia către terți, precum și de la obținerea cheii utilizând aplicații și servicii care nu sunt de încredere. Metoda luată în considerare este cea mai sigură.