Lompat ke konten Lompat ke sidebar Lompat ke footer

Laravel PHP Buat Folder dan Unggah file ke google drive dengan token akses

Laravel PHP Buat Folder dan Unggah file ke google drive dengan token akses


Dalam tutorial PHP Laravel ini, saya akan memberi tahu Anda cara mengunggah file di Google drive menggunakan Google drive API.

Saya sudah membahas tentang otentikasi Login dengan Google API , Anda dapat mengikuti tautan ini untuk mendapatkan token akses setelah berhasil otentikasi dengan Google OAuth2 API.

Untuk contoh ini, saya memerlukan token penyegaran untuk akses permanen ke Google API karena Token akses memiliki masa pakai terbatas yang berarti Anda harus mengulangi alur persetujuan OAuth 2.0 untuk mengautentikasi pengguna, tetapi Jika Anda memiliki token penyegaran maka Anda dapat menggunakan token penyegaran ini untuk mendapatkan token akses baru.

Pada saat permintaan otorisasi awal saja, Google menyediakan token penyegaran tetapi untuk mendapatkan token penyegaran Anda harus menentukan akses offline seperti ini:

$this->gClient->setAccessType("offline");
$this->gClient->setApprovalPrompt("force");
Anda harus mengaktifkan Google Drive API dengan akun Google Anda.

Anda harus memiliki client_id, client_secretdan api_keyuntuk contoh ini.

Langkah 1: Instalasi

Pertama saya akan pergi dengan instalasi baru dengan menjalankan perintah berikut:

composer create-project --prefer-dist laravel/laravel blog "5.4.*"

Langkah 2: Tabel Pengguna

Sekarang saya akan membuat tabel Pengguna untuk menyimpan token setelah otentikasi dengan Google untuk akses di masa mendatang.

Ketika Anda menginstal aplikasi Laravel baru maka Anda akan memiliki file migrasi untuk tabel pengguna secara default di database/migrasi jalur berikut .

Sekarang tambahkan kolom "access_token" di file migrasi pengguna untuk menyimpan token akses untuk setiap pengguna setelah otentikasi dengan Google API.

Masukkan kode di atas dalam file migrasi pengguna dan jalankan perintah berikut untuk membuat tabel di database Anda:

php artisan migrate

Langkah 3: Instal Google Client Library

Pada langkah ini, saya akan menginstal perpustakaan Klien Google dengan menggunakan komposer, Tambahkan baris berikut di file composer.json Anda:

"require": {
 ....
 "google/apiclient": "2.0.*"
}

Sekarang perbarui komposer Anda dengan menjalankan perintah berikut :

composer update

Langkah 4 : Add Routes

Sekarang kita akan menambahkan beberapa Routes untuk contoh ini:

routes/web.php

Route::get('glogin',array('as'=>'glogin','uses'=>'UserController@googleLogin')) ;
Route::post('upload-file',array('as'=>'upload-file','uses'=>'UserController@uploadFileUsingAccessToken')) ;

Langkah 5: Pengontrol Pengguna

Dalam UserController ini, Kami memiliki dua metode dengan konstruktor. Di konstruktor, saya akan mendefinisikan objek klien Google yang diotorisasi.

googleLogin() metode ini digunakan untuk mengautentikasi pengguna dan menyimpan token akses pengguna tersebut dalam tabel "pengguna".

uploadFileUsingAccessToken() metode ini digunakan untuk mengunggah file ke akun google drive pengguna tetapi sebelum mengunggah file atau membuat folder, Kami akan memeriksa apakah token akses kedaluwarsa kemudian membuat yang baru dengan bantuan refresh token.





Posting Komentar untuk "Laravel PHP Buat Folder dan Unggah file ke google drive dengan token akses"