Cara mendapatkan access_token di VKontakte. Menghubungkan dan bekerja dengan vk api Apa kunci VK di login

Saya mencoba mendapatkan token. Saya membaca dokumentasi dan tidak mengerti apa pun. Apa yang harus dilakukan?

Token adalah kunci akses API. Mereka digunakan untuk otorisasi saat membuat permintaan API.

Token memungkinkan Anda membatasi akses ke data pengguna menggunakan parameter cakupan. Ini mendefinisikan cakupan visibilitas untuk aplikasi Anda. Token dengan scope=friends memberikan akses ke teman dan tidak ada yang lain. Dengan demikian, token menjadi kurang berbahaya dibandingkan login dan kata sandi.

Bagaimana cara mendapatkan

Token bisa didapatkan langsung dari browser. Untuk melakukan ini, Anda hanya perlu mengikuti tautan yang benar. Cara membuat link yang benar:

1. Buat aplikasi Mandiri.

  • redirect_uri tidak perlu ditentukan karena Anda tidak memerlukan situs web, itu adalah aplikasi klien.
  • Biarkan respon_type dan tampilkan seperti pada contoh.
  • Anda menerima client_id pada langkah kedua.
  • v mengambil dari halaman versi API. Pilih yang terbaru.

Pilih cakupan tergantung pada metode yang ingin Anda gunakan. Misalnya untuk mengakses metode

Jejaring sosial telah menjadi alat integral untuk promosi situs web. Untuk mempromosikan situs web melalui media sosial. jaringan harus membuat grup atau halaman untuk situs ini. Dapatkan pelanggan, posting berita di dinding, dan banyak lagi (ini adalah topik untuk catatan terpisah). Banyak dari proses ini dapat diotomatisasi menggunakan API (antarmuka pemrograman aplikasi) dari jejaring sosial terkait. Pada artikel ini saya akan menjelaskan cara terhubung ke api VK (VKontakte), cara mulai bekerja dengan api VK, dan juga memberikan beberapa contoh bekerja dengan api VKontakte.

Membuat aplikasi VKontakte

Jadi mari kita mulai. Vk api memiliki banyak metode, tetapi salah satu perbedaan utamanya adalah untuk membuat permintaan ke Vk api melalui beberapa metode, diperlukan kunci akses khusus - sebuah token (access_token). Anda bisa mendapatkannya dengan membuat aplikasi Anda sendiri. Kami ditawarkan beberapa jenis aplikasi, namun saya memilih jenis Standalone. Saya sudah merasa cukup. Untuk mulai membuat aplikasi, ikuti tautannya dan temukan diri Anda di jendela berikutnya.


Di sini kita memilih jenis dan nama aplikasi kita. Kami klik sambungkan aplikasi dan menerima SMS dengan kode ke nomor telepon yang tertaut ke akun VK tempat kami membuat aplikasi. Masukkan dan pergi ke jendela berikutnya. Di jendela ini, buka tab pengaturan.


Di tab pengaturan kita melihat bidang bernama ID aplikasi dan kunci keamanan. Kami mencatat data ini di suatu tempat. Saya tidak melakukan hal lain di tab. Status permohonan dibiarkan pada posisi nonaktif. Klik simpan pengaturan. Itu saja, kami telah membuat aplikasi VKontakte.

Menerima token (access_token) api VK

https://oauth.vk.com/authorize?client_id= &tampilan= [tampilan jendela]&redirect_uri=https://oauth.vk.com/blank.html&scope= [izin aplikasi]&response_type=token&v=5.52

  • client_id - ID aplikasi kita, diperoleh sebelumnya.
  • tampilan - jenis jendela tempat otorisasi akan dilakukan. Bisa berupa halaman, popup, touch dan wap
  • scope - hak akses aplikasi kita mengenai data pengguna. Lebih lanjut tentang hak di bawah.

Hak aplikasi VK sehubungan dengan pengguna tertentu dapat ditentukan dalam bentuk teks dan digital. Dalam teks akan terlihat seperti ini scope=friends,messages,groups . Dengan baris kode ini kami mengizinkan aplikasi vk mengakses teman, pesan, dan grup pengguna. Hak juga diatur dalam bentuk digital. Setiap aturan memiliki bit mask dan jumlah dari masker ini dan akan memungkinkan aplikasi untuk melakukan tindakan tertentu. Misalnya di sebelah kanan adalah teman(+2), pesan(+4096), grup(+262144), akibatnya jumlah bit masknya adalah 266242 dan kode scope=266242 akan dianalogikan dengan scope=teman , pesan, grup. Saya ingin memberikan perhatian khusus pada hak untuk offline. Menyetelnya dengan benar membuat token yang kita terima tidak terbatas. Jika hak ini tidak ditetapkan, setelah waktu tertentu token perlu diperoleh kembali. Anda dapat membaca lebih lanjut tentang hak aplikasi VK di sini. Sebagai hasilnya, mari kita buat alamat aplikasi untuk menerima token dengan hak akses ke teman, pesan, dan grup pengguna, serta token abadi. Biarkan ID aplikasi menjadi 123456. Alamat ini akan terlihat seperti ini:

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


Kami mengkonfirmasi tindakan tersebut dan membuka halaman dengan peringatan; kami mengambil token yang kami terima dari bilah alamat browser. Ini akan terjadi setelah #access_token= , kode expired_in=0 memberi tahu kita bahwa token (access_token) VK api abadi. Oleh karena itu, user_id= adalah id pengguna yang kami terima tokennya.

Mari masuk ke pengaturan akun di tab pengaturan aplikasi dan lihat aplikasi kita.


Sekarang kita semua siap bekerja dengan VKontakte API.

Contoh bekerja dengan api vk

Untuk bekerja dengan VK API, saya menggunakan bahasa pemrograman PHP. Oleh karena itu saya akan memberikan contoh di PHP. Untuk melakukan tindakan apa pun, kita perlu mengirimkan permintaan ke api vk. Kami juga dapat mengirimkan permintaan melalui bilah alamat browser. Artinya, permintaan adalah URL tertentu dengan parameter tertentu yang ditentukan di dalamnya. Sintaks untuk membuat URL tersebut dijelaskan di bawah.

Https://api.vkontakte.ru/ method/[METODE YANG DISEBUT]?[PARAMETER METODE YANG DISEBUT]

Daftar metode api vk ada di sini. Kami tidak akan membahasnya lebih lanjut untuk saat ini, maka dengan contoh nyata semuanya akan menjadi jelas. Yang tersisa hanyalah mencari cara mengirim permintaan ke API VKontakte menggunakan PHP. Untuk melakukan ini, kita akan menggunakan fungsi php file_get_contents , serta fungsi json_decode, karena kita akan menerima respons dari server dalam format json. Berikut adalah template untuk mengeksekusi permintaan ke VK di PHP.

$result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/[METODE YANG DIPANGGIL]?[PARAMETER METODE YANG DIPANGGIL]"));

Nah, sekarang beberapa contoh cara bekerja dengan VK API

$userid=12345; $token saya=56789; /*akan mengembalikan objek dengan jenis kelamin dan tanggal lahir pengguna*/ $request_params = array("user_id" => $userid, "fields" => "sex", "fields" => "bdate"); $get_params = http_build_query($request_params); $hasil = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); /*memeriksa pengguna untuk larangan VK*/ $request_params = array("user_id" => $user_id, "fields" => "deactivated"); $get_params = http_build_query($request_params); $hasil = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); if(isset($result->response->deactivated))( echo "Halaman dibekukan atau dihapus"; ) /*kirim pesan ke pengguna dengan user_id=222222*/ $mesage="Halo, apa kabar?"; //kodekan string $msg=urlencode($mesage); $hasil = json_decode(file_get_contents("https://api.vkontakte.ru/method/ messages.send?user_id=222222& message=".$msg."&access_token=".$mytoken)); /*ayo undang pengguna dengan user_id=222222 sebagai teman*/ $mesage="Ayo berteman"; $pesan=urlencode($pesan); $result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/friends.adduser_id=222222& text=".$msg."&access_token=".$mytoken));

API memiliki banyak metode, jadi saya menyarankan Anda untuk membaca dokumentasinya. Tentu saja, kueri tidak selalu dijalankan dengan benar dan mengembalikan kode kesalahan. Kesalahan dapat dilihat di sini. Jadi begitu saja, Anda cukup terhubung ke api vk dan mengotomatiskan tindakan Anda di kontak.

Semakin sering produk perangkat lunak untuk VKontakte muncul di pasaran dalam bentuk layanan online, aplikasi seluler atau komputer, dan bahkan skrip yang memerlukan otorisasi akun melalui access_token. Dalam beberapa kasus, program atau layanan ini sendiri memungkinkan untuk mendapatkan kunci akses yang diperlukan untuk otorisasi dalam beberapa klik. Namun bagaimana jika Anda mengunduh skripnya, tetapi Anda tidak memiliki kunci access_token agar dapat berfungsi?

Bagaimana cara mendapatkan access_token?

Kami akan mempertimbangkan metode otorisasi di jejaring sosial VKontakte menggunakan tautan langsung melalui API VKontakte (berdasarkan protokol OAuth), yang disebut Aliran implisit. Otorisasi menggunakan metode ini dilakukan melalui aplikasi VKontakte yang ditentukan sebagai ID. Ini adalah metode otentikasi paling aman. Di Internet Anda dapat menemukan banyak sekali artikel seperti ini tentang mendapatkan access_token melalui berbagai aplikasi mencurigakan. Kami akan mengambil cara lain - kami akan menganalisis metode otorisasi melalui aplikasi kami sendiri atau aplikasi resmi VKontakte.

Cara mendapatkan tokennya adalah dengan mengikuti link khusus yang berisi ID beberapa aplikasi VKontakte, seperti ini:

Mengutip

200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id= APPLICATION_ID&scope=beritahu,foto,teman,audio,video,catatan,halaman,dokumen,status,pertanyaan,penawaran,dinding,grup,pesan,notifikasi,statistik,iklan,offline&redirect_uri=http://api.vk.com/blank. html&display=halaman&response_type=token


Seluruh pertanyaannya adalah di mana mendapatkannya APPLICATION_ID. Seperti yang saya janjikan, kita akan melihat 2 metode:
  • Menerima token melalui aplikasi Anda sendiri.

    Metode mendapatkan token ini mengasumsikan Anda memiliki aplikasi sendiri. Dalam hal ini, lewati beberapa langkah. Kami akan mulai dari fakta bahwa Anda tidak memiliki aplikasi sendiri, yang berarti Anda perlu membuatnya. Untuk melakukan ini, Anda perlu membuka halaman untuk mengelola aplikasi Anda menggunakan tautan vk.com/apps?act=manage dan klik pada " Buat aplikasi».


    Masukkan nama untuk aplikasi yang akan datang, misalnya, " Mendapatkan access_token", pastikan" Aplikasi mandiri" dan klik tombol " Hubungkan aplikasi».


    Selanjutnya, Anda harus menyetujui aplikasi dengan menerima kode konfirmasi di ponsel Anda dan memasukkannya ke dalam bidang khusus. Selain itu, selama proses persetujuan aplikasi, Anda dapat menautkan perangkat seluler Anda ke akun VKontakte Anda. Untuk melakukan ini, klik tombol " Perangkat tautan" Jika tidak, cukup klik tautan " Konfirmasi melalui SMS» tanpa menghubungkan perangkat ke halaman.


    Setelah konfirmasi, Anda akan melihat halaman berisi informasi tentang aplikasi yang dibuat. Di menu sebelah kiri, klik item “ Pengaturan" Di sinilah yang disebut id_klien, yaitu ID aplikasi VKontakte Anda.


    ID ini perlu disalin dan ditempelkan ke tautan kami APPLICATION_ID. Seharusnya terlihat seperti ini:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=5563738&scope=notify,foto,teman,audio,video, catatan,halaman,dokumen,status,pertanyaan,penawaran,dinding,grup,pesan,pemberitahuan,statistik,iklan,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token


    5563738 – ini adalah ID aplikasi kita. Anda akan memiliki nomor yang sama.
  • Menerima token melalui aplikasi resmi VKontakte.

    Cara ini benar-benar identik dengan cara sebelumnya, hanya saja Anda tidak membuat aplikasi sendiri, tetapi menggunakan aplikasi VKontakte resmi yang sudah dibuat dan dapat Anda percayai.

    Sebagai contoh, kita akan mengambil aplikasi VKontakte untuk Android. ID-nya adalah sebagai berikut: 2890984 . Alhasil, jika disubstitusikan ke dalam link, maka akan terlihat bentuk sebagai berikut:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video, catatan,halaman,dokumen,status,pertanyaan,penawaran,dinding,grup,pesan,pemberitahuan,statistik,iklan,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

Ini menyimpulkan bagian mengenai pengidentifikasi aplikasi (ID) yang digunakan untuk otorisasi. Namun masih ada beberapa hal yang perlu diklarifikasi.

  • Berikan access_token yang diterima kepada pihak ketiga.
  • Lewati otorisasi melalui aplikasi yang meragukan (selain aplikasi Anda sendiri atau aplikasi resmi).
  • Setelah menggunakan access_token yang dihasilkan, hapus. Jika perlu, Anda selalu dapat membuat yang baru.
  • Akhiri semua sesi aktif di pengaturan keamanan akun VKontakte Anda. Ini adalah cara cepat untuk menonaktifkan semua access_tokens yang aktif.
Dan sekarang, setelah Anda membaca informasi di atas, Anda dapat mulai membuat aplikasi Anda sendiri untuk menghasilkan access_token Anda atau ikuti tautan untuk menghasilkan access_token melalui aplikasi VKontakte untuk Android menggunakan tombol di bawah ini:

Dapatkan access_token

Pengembang cukup sering harus berurusan dengan aplikasi dan layanan yang, dalam proses berinteraksi dengan jejaring sosial VKontakte, memerlukan kunci akses - access_token.

Dalam instruksi ini kita akan melihat dua metode yang sangat mirip untuk mendapatkannya.

Bagaimana prosesnya?

Yang perlu kita lakukan hanyalah mengganti id aplikasi di URL. Dimungkinkan juga untuk mengedit bagian yang kami izinkan aksesnya melalui access_token yang dibuat.

Intinya, kami akan membuat URL siap pakai dan mengganti id dari dua aplikasi berbeda. Ini akan membuat perbedaan. Setelah ini, kami akan mengikuti tautan yang telah disiapkan dan menerima kunci akses.

Tautan untuk mendapatkan kuncinya

Ini alamat url yang sudah jadi. Di sini kami terutama tertarik pada data setelah tanda =. Pada contoh di bawah ini tertulis ID Aplikasi. Kami, pada gilirannya, akan mengganti nomor tertentu di sana.

Https://oauth.vk.com/authorize?client_id=ID-applications&scope=notify,photos,teman,audio,video,catatan,halaman,dokumen,status,pertanyaan,penawaran,dinding,grup,pesan,pemberitahuan,statistik, iklan, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

Perhatikan juga data setelah kata “scope”. Di sini kami mencantumkan bagian yang akan diberi akses oleh kunci tersebut. Untuk mencegah aplikasi mengakses bagian dengan teman kita, hapus teks “teman” dari tautan. Selebihnya adalah dengan analogi.

Sekarang yang tersisa hanyalah mendapatkan ID.

Kami mendapatkan ID melalui aplikasi kami sendiri

Untuk membuatnya, kita perlu pergi ke bagian sesuai yang tersedia di akun pengembang. Ikuti tautan di sana.

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

Dan tekan tombolnya "Buat aplikasi".

Tentukan nama dan jenis aplikasi (lihat). Kemudian klik tombolnya "Hubungkan aplikasi".

Saat ini, semua operasi di akun pengembang harus dikonfirmasi melalui SMS. Di jendela yang terbuka, pilih “Konfirmasi melalui SMS”. Terima kode di ponsel Anda, lalu masukkan ke dalam formulir.

Aplikasi akan dibuat. Sekarang buka tab Pengaturan. Di sini, di blok, kumpulan angka yang kita perlukan akan ditunjukkan. Salin itu.

Sekarang kami memiliki semua yang kami butuhkan.

Kami menggunakan ID aplikasi resmi VKontakte

Cara mendapatkan ID yang kedua cukup dengan mengambil aplikasi yang sudah jadi. Dan yang terbaik, aplikasi VKontakte resmi untuk Android. ID-nya adalah "2890984". Anda bisa menggunakannya.

Kami mendapatkan Access_token

Https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video,catatan,halaman,dokumen,status,pertanyaan,penawaran,dinding,grup,pesan,notifikasi,statistik,iklan, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat