Hoe u het toegangstoken van het slachtoffer kunt achterhalen. Verbinding maken en werken met vk API

Ontwikkelaars hebben vaak te maken met applicaties en services die tijdens de interactie met het sociale netwerk VKontakte een toegangssleutel vereisen: access_token.

In deze instructie zullen we twee zeer vergelijkbare methoden bekijken om dit te verkrijgen.

Hoe zal het proces verlopen?

Het enige dat we hoeven te doen is de applicatie-ID in de URL vervangen. Het is ook mogelijk om secties te bewerken waartoe we toegang verlenen via het aangemaakte access_token.

In wezen zullen we een kant-en-klare URL maken en de ID van twee vervangen verschillende toepassingen. Dit zal het verschil maken. Hierna volgen wij de voorbereide link en ontvangen wij een toegangssleutel.

Link om de sleutel te verkrijgen

Hier is het klaar URL-adres. Hier zijn we vooral geïnteresseerd in de gegevens na het =-teken. In het onderstaande voorbeeld staat Applicatie-ID. Wij zullen daar op onze beurt een specifiek nummer vervangen.

Https://oauth.vk.com/authorize?client_id=ID-applications&scope=notify,foto's,vrienden,audio,video,notities,pagina's,documenten,status,vragen,aanbiedingen,muur,groepen,berichten,meldingen,statistieken, advertenties,offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

Let ook op de gegevens na het woord ‘scope’. Hier vermelden we de secties waartoe de sleutel toegang geeft. Om te voorkomen dat applicaties toegang krijgen tot het gedeelte met onze vrienden, verwijdert u de tekst “vrienden” uit de link. De rest is naar analogie.

Het enige dat nu nog overblijft is het verkrijgen van de ID.

ID verkrijgen wij via onze eigen applicatie

Om het te maken, moeten we naar de juiste sectie gaan die beschikbaar is in het ontwikkelaarsaccount. Volg de link daar.

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

En druk op de knop "Maak een applicatie".

Geef de naam en het type toepassing op (zie). Klik dan op de knop "Verbind applicatie".

Onlangs moeten alle bewerkingen in het ontwikkelaarsaccount via sms worden bevestigd. Selecteer in het geopende venster “Bevestigen via sms”. Ontvang de code op uw mobiele telefoon en voer het vervolgens in het formulier in.

De applicatie wordt gemaakt. Ga nu naar het tabblad Instellingen. Hier in het blok wordt de reeks getallen aangegeven die we nodig hebben. Kopieer het.

Nu hebben we alles wat we nodig hebben.

We gebruiken de ID van de officiële VKontakte-applicatie

De tweede manier om een ​​identiteitsbewijs te krijgen is door het simpelweg af te nemen klaar applicatie. En het beste van alles - officiële aanvraag VKontakte voor Android. Zijn identiteitsbewijs is "2890984". Je kunt het gebruiken.

We krijgen Access_token

Https://oauth.vk.com/authorize?client_id=2890984&scope=notify,foto's,vrienden,audio,video,notities,pagina's,documenten,status,vragen,aanbiedingen,muur,groepen,berichten,meldingen,statistieken,advertenties, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

Er wordt een pagina geopend in de browser met een melding dat u de toegangssleutel niet aan derden mag verstrekken. En in de adresbalk van de browser - de gegenereerde sleutel. Het bevindt zich tussen de waarden "access_token=" en "&expires_in". Kopieer het.

Conclusie

De sleutel kan worden bijgewerkt door de beschreven stappen te herhalen. Zorg ervoor dat u deze niet aan derden verspreidt, en dat u de sleutel niet verkrijgt via niet-vertrouwde applicaties en services. De overwogen methode is de veiligste.

Wat is een VK-token? Tegenwoordig ontwikkelt de technologie zich in een zeer snel tempo. Tegelijkertijd winnen sociale netwerken enorm aan kracht. Het niet meer voor iedereen mogelijk zijn om een ​​account te hebben op tenminste één van de sociale netwerken ten minste onder jongeren en meisjes. Elke dag worden ze aangevuld met terabytes aan foto's, video's en zelfs een primitieve eenheid van tekstkennis.

Wat is een VK-token

Maar helaas zijn maar weinig mensen op de hoogte van de speciale 'trucs' van deze hulpbron. Sommige mensen brengen er echt weinig tijd door, terwijl anderen ze simpelweg niet nodig hebben.
Een van deze opvallende dingen is de zogenaamde “token” in dit sociale netwerk, maar weinig gebruikers weten wat een VK-token is.

Wat is een toegangstoken op VKontakte.

VK-token is een lange reeks bestaande uit tekens: cijfers en letters van het Latijnse alfabet. Het lijkt erop dat er niets bijzonders aan is, maar het biedt geweldige kansen voor de gebruiker die het heeft geactiveerd.

Schrijf bijvoorbeeld bepaalde berichten aan een bepaalde persoon, geef de eeuwige online van uw pagina weer, alsof u altijd op de site bent. Die laatste optie is een groot pluspunt, want onlangs is de onzichtbaarheid in Contact verwijderd en met behulp van de token zal niemand meer precies kunnen begrijpen wanneer je online was, omdat deze constant wordt weergegeven. Stel een status in, schrijf op de muur, enz.

Hoe u een VKontakte-token kunt verkrijgen.

Het proces voor het verkrijgen van een token wordt uitgevoerd via de applicatie. U dient deze zelf aan te maken; dit kunt u doen door de link vk.com/apps?act=manage te volgen en op de knop aanmaken te klikken. Wij kunnen in de titel zetten wat u maar wilt. Wij kiezen voor het allereerste type. Vervolgens doorlopen we de bevestiging via een mobiele telefoon.

De pagina van uw applicatie verschijnt, selecteer “Instellingen” en er verschijnt een lange reeks sterren en een ID erbovenop.

https://oauth.vk.com/authorize?client_id=5563738&scope=notify,foto's,vrienden,audio,video,notities,pagina's,documenten,status,vragen,aanbiedingen,muur,groepen,berichten,meldingen,statistieken,advertenties, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Hoe u uw token kunt achterhalen in contact.

Nadat u al het bovenstaande heeft voltooid, verschijnt er een venster waarin u met alles akkoord gaat en op de knop "Toestaan" klikt.

Het lijkt moeilijk, maar in feite kan iedereen een token op VK krijgen, een andere vraag is waarom? 99% van de VK-gebruikers heeft zijn kennis helemaal niet nodig. We haasten ons ook om u te waarschuwen om uw token niet op dubieuze bronnen te geven of in te voeren, anders kan uw pagina in handen van een aanvaller terechtkomen. Het kan bijvoorbeeld zijn dat u zonder uw medeweten bent geabonneerd op verschillende groepen of communities, een twijfelachtige status krijgt of onder uw naam op uw prikbord wordt geplaatst.

Sociale netwerken zijn een integraal hulpmiddel geworden voor websitepromotie. Om een ​​website te promoten via sociale media. netwerk moet een groep of pagina voor deze site maken. Krijg abonnees, post nieuws op de wall en nog veel meer (dit is een onderwerp voor een aparte notitie). Veel van deze processen kunnen worden geautomatiseerd met behulp van de API (application programming interface) van de betreffende applicatie sociaal netwerk. In dit artikel zal ik uitleggen hoe je verbinding kunt maken met de VK api (VKontakte), hoe je met de VK api kunt gaan werken, en ook verschillende voorbeelden geven van het werken met de VKontakte api.

Een VKontakte-applicatie maken

En dus laten we aan de slag gaan. Vk api heeft veel methoden, maar een van de belangrijkste verschillen is dat om via sommige methoden verzoeken aan Vk api te kunnen doen, een speciale toegangssleutel vereist is: een token (access_token). U kunt het verkrijgen door uw eigen applicatie te maken. Er worden ons verschillende soorten applicaties aangeboden, maar ik kies voor het Standalone-type. Ik heb er genoeg van. Om te beginnen met het maken van een applicatie, volgt u de link en gaat u naar het volgende venster.


Hier selecteren we het type en de naam van onze applicatie. We klikken op de applicatie verbinden en ontvangen een sms met een code op het telefoonnummer dat is gekoppeld aan het VK-account van waaruit we de applicatie maken. Voer het in en ga naar het volgende venster. Ga in dit venster naar het tabblad Instellingen.


Op het tabblad Instellingen zien we velden met de naam applicatie-ID en beveiligingssleutel. Deze gegevens leggen wij ergens vast. Ik heb niets anders gedaan in de tabbladen. De applicatiestatus bleef in de uitgeschakelde positie staan. Klik op instellingen opslaan. Dat is alles, we hebben de VKontakte-applicatie gemaakt.

Een token (access_token) API VK ontvangen

https://oauth.vk.com/authorize?client_id= &weergave= [vensterweergave]&redirect_uri=https://oauth.vk.com/blank.html&scope= [applicatierechten]&response_type=token&v=5,52

  • client_id - ID van onze applicatie, eerder verkregen.
  • display - het type venster waarin autorisatie zal plaatsvinden. Kan pagina, pop-up, aanraking en wap zijn
  • reikwijdte - de toegangsrechten van onze applicatie met betrekking tot gebruikersgegevens. Hieronder meer over rechten.

VK-applicatierechten met betrekking tot een bepaalde gebruiker kunnen worden gespecificeerd in tekst en digitale vorm. In tekst ziet het er als volgt uit scope=friends,messages,groups . Met deze coderegel hebben we de vk-applicatie toegang gegeven tot de vrienden, berichten en groepen van de gebruiker. Rechten worden ook in digitale vorm vastgelegd. Voor elke regel is er een bitmasker en de som van deze maskers maakt de toepassing mogelijk bepaalde acties. Het recht is bijvoorbeeld vrienden(+2), berichten(+4096), groepen(+262144), als resultaat zal de som van de bitmaskers 266242 zijn en zal de code scope=266242 analoog zijn aan scope=friends , berichten, groepen . Ik wil graag bijzondere aandacht besteden aan het recht op offline. Als u dit recht instelt, wordt het token dat we ontvangen oneindig. Als dit recht niet is ingesteld via bepaalde tijd het token moet opnieuw worden verkregen. U kunt hier meer lezen over VK-applicatierechten. Laten we daarom een ​​adres maken waar de applicatie een token kan ontvangen met toegangsrechten tot de vrienden, berichten en groepen van de gebruiker, evenals een onsterfelijk token. Laat de applicatie-ID 123456 zijn. Dit adres zal er als volgt uitzien:

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


We bevestigen de actie en komen op een pagina met een waarschuwing; we halen ons ontvangen token uit de adresbalk van de browser. Dit zal zijn na #access_token= , de code expireert_in=0 vertelt ons dat de token (access_token) VK API onsterfelijk is. Dienovereenkomstig is user_id= de id van de gebruiker waarvoor we het token hebben ontvangen.

Laten we naar de accountinstellingen op het tabblad Applicatie-instellingen gaan en onze applicatie bekijken.


Nu zijn we allemaal klaar om met de VKontakte API te werken.

Voorbeelden van het werken met api vk

Om met de VK API te werken gebruik ik de taal php-programmering. Daarom zal ik voorbeelden geven in PHP. Om enige actie uit te voeren, moeten we een verzoek sturen naar api vk. Wij kunnen uw verzoek ook versturen via adresbalk browser. Dat wil zeggen dat een verzoek een specifieke URL is waarin bepaalde parameters zijn gespecificeerd. De syntaxis voor het maken van een dergelijke URL wordt hieronder beschreven.

Https://api.vkontakte.ru/methode/[CALLED METHODE]?[CALLED METHODE PARAMETERS]

De lijst met api vk-methoden is hier. We zullen hier voorlopig niet meer op focussen, dan zal met echte voorbeelden alles duidelijk worden. Het enige dat overblijft is om erachter te komen hoe u een verzoek naar de VKontakte API kunt verzenden met behulp van php. Hiervoor zullen we gebruiken php-functie file_get_contents , evenals de json_decode-functie, omdat we het antwoord van de server in json-indeling zullen ontvangen. Hier is een sjabloon voor het uitvoeren van een verzoek aan VK in PHP.

$result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/[CALLED METHOD]?[CALLED METHOD PARAMETERS]"));

Welnu, nu enkele voorbeelden van het werken met de VK API

$user-id=12345; $mijntoken=56789; /*zal een object retourneren met het geslacht en de geboortedatum van de gebruiker*/ $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)); /*controleert de gebruiker op VK-ban*/ $request_params = array("user_id" => $user_id, "fields" => "gedeactiveerd"); $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->gedeactiveerd))( echo "Pagina bevroren of verwijderd"; ) /*stuur een bericht naar de gebruiker met user_id=222222*/ $mesage="Hallo, hoe gaat het?"; //codeer de string $msg=urlencode($mesage); $result = json_decode(file_get_contents("https://api.vkontakte.ru/method/ messages.send?user_id=222222& message=".$msg."&access_token=".$mytoken)); /*laten we de gebruiker met user_id=222222 uitnodigen als vriend*/ $mesage="Laten we vrienden zijn"; $msg=urlencode($bericht); $result=json_decode(file_get_contents("https://api.vkontakte.ru/method/friends.adduser_id=222222& text=".$msg."&access_token=".$mytoken));

De API kent veel methoden, dus ik raad je aan de documentatie te lezen. Uiteraard worden queries niet altijd correct uitgevoerd en worden er foutcodes geretourneerd. Fouten kunnen hier worden bekeken. U kunt dus zomaar verbinding maken met de vk-api en uw contactacties automatiseren.

Ze verschijnen steeds vaker op de markt softwareproducten voor VKontakte in de vorm van online diensten, mobiel of computertoepassingen en zelfs scripts die accountautorisatie vereisen via access_token. In sommige gevallen maken deze programma's of diensten het zelf mogelijk om met een paar klikken de toegangssleutel te verkrijgen die nodig is voor autorisatie. Maar wat als u het script hebt gedownload, maar niet over de access_token-sleutel beschikt om het te laten werken?

Hoe kan ik access_token verkrijgen?
We zullen een autorisatiemethode in het sociale netwerk VKontakte overwegen met behulp van een directe link via de VKontakte API (gebaseerd op het OAuth-protocol), genaamd Impliciete stroom. Autorisatie met deze methode wordt uitgevoerd via de VKontakte-applicatie, gespecificeerd als een ID. Dit is het meeste veilige methode autorisatie. Op internet kun je vinden groot aantal artikelen zoals deze over het verkrijgen van access_token via verschillende verdachte toepassingen. We zullen andere paden bewandelen - we zullen de autorisatiemethoden analyseren via onze eigen applicatie of de officiële VKontakte-applicatie.

De methode voor het verkrijgen van een token is het volgen van een speciale link met de ID van een VKontakte-applicatie, zoals deze:

Citaat

200?"200px"+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id= APPLICATION_ID&scope=notify,foto's,vrienden,audio,video,notities,pagina's,documenten,status,vragen,aanbiedingen,wall,groepen,berichten,meldingen,statistieken,advertenties,offline&redirect_uri=http://api.vk.com/blank. html&display=pagina&response_type=token


De hele vraag is waar je dit kunt krijgen APPLICATION_ID. Zoals ik beloofde, zullen we naar 2 methoden kijken:
  • Een token ontvangen via uw eigen applicatie.

    Bij deze methode voor het verkrijgen van een token wordt ervan uitgegaan dat u over een eigen applicatie beschikt. Sla in dit geval een paar stappen over. We gaan ervan uit dat u geen eigen applicatie heeft, wat betekent dat u er een moet maken. Om dit te doen, gaat u naar de pagina voor het beheren van uw applicaties via de link vk.com/apps?act=beheren en klik op de " Maak een applicatie».


    Voer een naam in voor de toekomstige toepassing, bijvoorbeeld: ' Access_token verkrijgen", zorg ervoor dat de" Zelfstandige applicatie" en klik op de knop " Sluit de applicatie aan».


    Vervolgens moet u de aanvraag goedkeuren door een bevestigingscode op uw telefoon te ontvangen en deze in een speciaal veld in te voeren. Tijdens het goedkeuringsproces van de aanvraag kunt u ook uw mobiel apparaat naar uw VKontakte-account. Om dit te doen, klikt u op de knop " Apparaat koppelen" Anders klikt u gewoon op de link " Bevestig via sms» zonder het apparaat aan de pagina te koppelen.


    Na bevestiging krijgt u een pagina te zien met informatie over de aangemaakte applicatie. Klik in het menu aan de linkerkant op het item “ Instellingen" Dit is waar uw zogenaamde klant_id, dat wil zeggen de ID van uw VKontakte-applicatie.


    Deze ID moet in plaats daarvan in onze link worden gekopieerd en geplakt APPLICATION_ID. Het zou er ongeveer zo uit moeten zien:

    200?"200px"+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video, notities, pagina's, documenten, status, vragen, aanbiedingen, muur, groepen, berichten, meldingen, statistieken, advertenties, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token


    5563738 – dit is de ID van onze applicatie. Je krijgt een vergelijkbaar nummer.
  • Een token ontvangen via de officiële VKontakte-applicatie.

    Deze methode is absoluut identiek aan de vorige, behalve dat u niet uw eigen applicatie maakt, maar een reeds gemaakte, officiële VKontakte-applicatie gebruikt die u kunt vertrouwen.

    Als voorbeeld nemen we de VKontakte-applicatie voor Android. Het ID is als volgt: 2890984 . Als gevolg hiervan zal het, als het in de link wordt vervangen, de volgende vorm aannemen:

    200?"200px"+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video, notities, pagina's, documenten, status, vragen, aanbiedingen, muur, groepen, berichten, meldingen, statistieken, advertenties, offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Hiermee wordt het deel afgesloten over de applicatie-identificatie (ID) die wordt gebruikt voor autorisatie. Maar er moeten nog een paar punten worden verduidelijkt.

Wij raden ten zeerste af:
  • Verstrek het ontvangen access_token aan derden.
  • Geef autorisatie door via dubieuze aanvragen (behalve die van uzelf of de officiële).
Wij raden ook ten zeerste aan:
  • Nadat u het gegenereerde access_token hebt gebruikt, verwijdert u het. Indien nodig kunt u altijd een nieuwe genereren.
  • Maak alles compleet actieve sessies in de beveiligingsinstellingen van uw VKontakte-account. Dit snelle manier schakel alle actieve toegangssleutels uit (access_token).
En nu, nadat u de bovenstaande informatie heeft gelezen, kunt u beginnen met creëren eigen applicatie om uw access_token te genereren of volg de link om een ​​access_token te genereren via de VKontakte-applicatie voor Android met behulp van de onderstaande knop: