Rumah rangka kerja php Laravel Pembangunan Laravel: Bagaimana untuk melaksanakan pengesahan API menggunakan Pasport dan Lumen Laravel?

Pembangunan Laravel: Bagaimana untuk melaksanakan pengesahan API menggunakan Pasport dan Lumen Laravel?

Jun 15, 2023 pm 08:35 PM
lumen pengesahan api laravel passport

Dengan perkembangan pesat teknologi mudah alih dan pengkomputeran awan, banyak syarikat telah membangunkan perkhidmatan API mereka sendiri dan menjadikannya sebahagian daripada perniagaan teras mereka. Semasa proses ini, menjadi sangat penting untuk melindungi data API dan memastikan bahawa hanya pengguna yang dibenarkan boleh mengakses data API ini. Oleh itu, pengesahan API menjadi topik penting. Dalam Laravel dan Lumen, pengesahan API boleh dilaksanakan menggunakan Pasport Laravel.

Laravel Passport ialah sistem pengesahan API berdasarkan standard OAuth2. Ia menyediakan cara mudah untuk mencipta pengesahan API dan menyokong berbilang pelanggan dan kaedah kebenaran. Dalam artikel ini, kami akan membincangkan cara melaksanakan pengesahan API menggunakan Pasport Laravel dan Lumen.

Pemasangan dan Konfigurasi Laravel Passport

Mula-mula, kita perlu memasang Laravel Passport dalam projek Laravel. Pasang menggunakan arahan berikut:

composer require laravel/passport
Salin selepas log masuk

Setelah pemasangan selesai, kita perlu menjalankan arahan berikut untuk melakukan migrasi yang diperlukan:

php artisan migrate

php artisan passport:install
Salin selepas log masuk

Arahan passport:install di atas akan mencipta klien dan kunci untuk Pengesahan. Kami juga perlu mendaftarkan laluan pengesahan menggunakan kaedah Passport::routes() yang disediakan oleh Laravel Passport dalam penyedia perkhidmatan permulaan:

// app/Providers/AuthServiceProvider.php

use LaravelPassportPassport;

// ...

public function boot() 
{
    // ...
    
    Passport::routes();
}
Salin selepas log masuk

Ini akan mendaftarkan laluan yang disediakan oleh Laravel Passport supaya kami boleh menggunakannya Pengesahan . Pada masa yang sama, kita juga perlu memilih pemacu passport dalam fail konfigurasi config/auth.php:

'guards' => [
    'api' => [
        'driver' => 'passport',
        'provider' => 'users',
    ],
],
Salin selepas log masuk

Menggunakan Pasport Laravel dalam Lumen

Jika projek kami dibuat menggunakan Rangka kerja Lumen, kemudian Kami boleh menggunakan versi Lumen bagi Pasport Laravel, yang menyediakan cara untuk serasi dengan Lumen. Kami boleh memasang Laravel Passport menggunakan arahan berikut:

composer require dusterio/lumen-passport
Salin selepas log masuk

Selepas pemasangan selesai, kami perlu menambah dua baris kod berikut dalam fail bootstrap/app.php untuk mendaftarkan penyedia perkhidmatan Lumen Passport:

$app->register(DusterioLumenPassportPassportServiceProvider::class);
$app->configure('auth');
Salin selepas log masuk

Selepas melengkapkan pendaftaran, kami perlu mendaftarkan penghalaan dan perisian tengah. Kami boleh menambah kod berikut pada fail app/Http/routes.php untuk mendaftarkan laluan yang disediakan oleh Lumen Passport:

$app->group(['middleware' => ['api']], function ($app) {
    DusterioLumenPassportLumenPassport::routes($app, ['prefix' => 'auth']);
});
Salin selepas log masuk

Dalam kod di atas, pilihan prefix menentukan awalan laluan dan middleware menentukan perisian tengah yang digunakan.

Seterusnya, kita perlu menambah perisian tengah yang disediakan oleh Lumen Passport. Dalam fail bootstrap/app.php, tambahkan kod berikut untuk mendaftarkan middleware:

$app->middleware([
    // ...
    DusterioLumenPassportHttpMiddlewareAddCustomHeaders::class,
]);
Salin selepas log masuk

Selepas pendaftaran selesai, kami telah melengkapkan konfigurasi menggunakan Laravel Passport dalam Lumen.

Menggunakan kebenaran kata laluan untuk pengesahan

Setelah kami melengkapkan konfigurasi Pasport Laravel, kami boleh menggunakan kebenaran kata laluan untuk pengesahan. Dalam kaedah kebenaran ini, pelanggan perlu menggunakan ID klien dan kunci rahsia untuk meminta token akses, dan kemudian menggunakan token akses untuk meminta sumber API yang dilindungi.

Kami boleh menggunakan kod berikut untuk meminta token akses:

$postData = [
    'grant_type' => 'password',
    'client_id' => '{client-id}',
    'client_secret' => '{client-secret}',
    'username' => '{username}',
    'password' => '{password}',
    'scope' => '',
];

$ch = curl_init('http://api.example.com/oauth/token');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);

$accessToken = json_decode($response)->access_token;
Salin selepas log masuk

Dalam kod di atas, kami telah menggunakan perpustakaan curl untuk meminta token akses daripada perkhidmatan API kami. Sila ambil perhatian bahawa {client-id} dan {client-secret} perlu diganti dengan ID pelanggan sebenar dan kunci rahsia, dan {username} dan {password} perlu diganti dengan bukti kelayakan pengguna sebenar.

Setelah kami memperoleh token akses, kami boleh menggunakannya untuk mengakses sumber API yang dilindungi. Apabila mengakses API, kita perlu meletakkan token akses dalam pengepala Kebenaran. Anda boleh melakukan ini dalam Laravel menggunakan kod berikut:

$response = Http::withHeaders([
    'Authorization' => 'Bearer ' . $accessToken,
])->get('http://api.example.com/api/user');
Salin selepas log masuk

Dalam kod di atas, kami menggunakan klien HTTP Laravel untuk mengakses API. Apabila pelanggan membuat permintaan, kami meletakkan token akses dalam pengepala Kebenaran supaya perkhidmatan API boleh mengesahkan token dan mengembalikan sumber yang dilindungi.

Kesimpulan

Menggunakan Pasport Laravel dan Lumen, kami boleh menambah keupayaan pengesahan yang kukuh pada perkhidmatan API kami. Apabila melaksanakan pengesahan API, kita perlu memahami protokol kebenaran OAuth2 dan kaedah kebenarannya. Apabila menggunakan kebenaran kata laluan, pelanggan perlu menggunakan ID klien dan kunci rahsia untuk meminta token akses. Sebaik sahaja kami memperoleh token akses, kami boleh menggunakannya untuk mengakses sumber API yang dilindungi.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk melaksanakan pengesahan API menggunakan Pasport dan Lumen Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan OpenID Connect untuk pengesahan API dalam PHP Cara menggunakan OpenID Connect untuk pengesahan API dalam PHP Jun 17, 2023 pm 07:33 PM

Dalam era digital hari ini, pengesahan API telah menjadi cara teknikal yang digunakan secara meluas. Untuk memastikan maklumat API selamat, banyak tapak web dan aplikasi menggunakan protokol OpenIDConnect untuk pengesahan. Protokol ini membolehkan anda menggunakan pembekal identiti pihak ketiga (IdP) untuk mengesahkan pengguna dan menyediakan API anda dengan keupayaan untuk menukar token identiti dan token akses. Dalam artikel ini, kami akan meneroka cara menggunakan OpenIDConnect untuk pengesahan API dalam PHP. Pasang pembangunan PHP

Cara menggunakan rangka kerja PHP Lumen untuk membangunkan sistem tolak mesej yang cekap dan menyediakan perkhidmatan tolak tepat pada masanya Cara menggunakan rangka kerja PHP Lumen untuk membangunkan sistem tolak mesej yang cekap dan menyediakan perkhidmatan tolak tepat pada masanya Jun 27, 2023 am 11:43 AM

Dengan perkembangan pesat Internet mudah alih dan perubahan dalam keperluan pengguna, sistem push mesej telah menjadi bahagian yang amat diperlukan dalam aplikasi moden Ia boleh merealisasikan pemberitahuan segera, peringatan, promosi, rangkaian sosial dan fungsi lain untuk menyediakan pengguna dan pelanggan perniagaan dengan perkhidmatan yang lebih baik pengalaman dan perkhidmatan. Untuk memenuhi permintaan ini, artikel ini akan memperkenalkan cara menggunakan rangka kerja PHP Lumen untuk membangunkan sistem tolak mesej yang cekap untuk menyediakan perkhidmatan tolak tepat pada masanya. 1. Pengenalan kepada Lumen Lumen ialah rangka kerja mikro yang dibangunkan oleh pasukan pembangunan rangka kerja Laravel Ia adalah a

Cara menggunakan rangka kerja Lumen dalam PHP Cara menggunakan rangka kerja Lumen dalam PHP Jun 27, 2023 pm 04:49 PM

Cara menggunakan rangka kerja Lumen dalam PHP Lumen ialah versi ringkas rangka kerja Laravel, yang memfokuskan pada membina perkhidmatan mikro ringan dan aplikasi API dengan cepat. Lumen ialah rangka kerja sumber terbuka yang dicipta dan diselenggara oleh Taylor Otwell. Ia terkenal dengan kelajuan dan prestasi yang menakjubkan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangka kerja Lumen dalam PHP. 1. Pasang dan konfigurasikan rangka kerja Lumen Mula-mula, anda perlu memasang alat komposer dalam sistem anda. Komp

Pembangunan Laravel: Bagaimana untuk melaksanakan pengesahan API menggunakan Pasport dan Lumen Laravel? Pembangunan Laravel: Bagaimana untuk melaksanakan pengesahan API menggunakan Pasport dan Lumen Laravel? Jun 15, 2023 pm 08:35 PM

Dengan perkembangan pesat teknologi mudah alih dan pengkomputeran awan, banyak syarikat telah membangunkan perkhidmatan API mereka sendiri dan menjadikannya sebahagian daripada perniagaan teras mereka. Semasa proses ini, menjadi sangat penting untuk melindungi data API dan memastikan bahawa hanya pengguna yang dibenarkan boleh mengakses data API ini. Oleh itu, pengesahan API menjadi topik penting. Dalam Laravel dan Lumen, pengesahan API boleh dilaksanakan menggunakan LaravelPassport. LaravelPassport adalah berasaskan OA

Aplikasi dan promosi spesifikasi PSR2 dan PSR4 dalam kerangka mikro Lumen Aplikasi dan promosi spesifikasi PSR2 dan PSR4 dalam kerangka mikro Lumen Oct 15, 2023 am 11:21 AM

Aplikasi dan promosi spesifikasi PSR2 dan PSR4 dalam kerangka mikro Lumen Pengenalan: Dengan aplikasi dan pembangunan bahasa PHP yang meluas, spesifikasi kod telah menjadi aspek penting untuk mengekalkan kualiti dan kebolehbacaan kod. PHPFIG (PHPFIG, PHPFrameworkInteropGroup) telah mencipta satu siri spesifikasi amalan terbaik (PSR, PHPStandardsRecommendations) pada pembangunan PHP, antaranya PSR2 dan PSR

Melaksanakan pengesahan keselamatan PHP menggunakan Pasport Laravel Melaksanakan pengesahan keselamatan PHP menggunakan Pasport Laravel Jul 25, 2023 pm 09:33 PM

Pengenalan kepada pengesahan keselamatan PHP menggunakan LaravelPassport: Dalam pembangunan web moden, pengesahan dan kebenaran pengguna adalah fungsi keselamatan yang sangat penting. LaravelPassport ialah alat pengesahan berasaskan OAuth2 yang boleh membantu kami melaksanakan fungsi pengesahan dan kebenaran pengguna dengan mudah. Artikel ini akan memperkenalkan cara menggunakan LaravelPassport untuk melaksanakan pengesahan keselamatan dalam PHP. Langkah: Pasang Laravel

Cara menggunakan rangka kerja PHP Lumen untuk membangunkan sistem baris gilir mesej yang cekap Cara menggunakan rangka kerja PHP Lumen untuk membangunkan sistem baris gilir mesej yang cekap Jun 27, 2023 pm 03:46 PM

Dengan pembangunan berterusan Internet, jumlah data menjadi lebih besar dan lebih besar, dan cara yang lebih cekap diperlukan untuk memproses data berskala besar ini. Sistem baris gilir mesej adalah cara yang berkesan untuk menyelesaikan masalah ini. PHP ialah bahasa pengaturcaraan yang sangat popular yang digunakan secara meluas dalam pembangunan Internet Beberapa CMS yang paling popular seperti WordPress, Drupal, dan Joomla ditulis dalam PHP. Antara rangka kerja PHP, Lumen ialah rangka kerja ringan untuk membina aplikasi web dan AP yang cekap

Pembangunan Laravel: Bagaimana untuk menyediakan pengesahan API untuk SPA menggunakan Laravel Sanctum? Pembangunan Laravel: Bagaimana untuk menyediakan pengesahan API untuk SPA menggunakan Laravel Sanctum? Jun 13, 2023 am 09:19 AM

Pembangunan Laravel: Bagaimana untuk menyediakan pengesahan API untuk SPA menggunakan LaravelSanctum? Dengan populariti Aplikasi Halaman Tunggal (SPA), kami memerlukan cara yang boleh dipercayai untuk melindungi API kami daripada akses dan serangan yang tidak dibenarkan. LaravelSanctum ialah sistem pengesahan ringan yang disediakan oleh Laravel, yang menyediakan pengesahan mudah untuk SPA. Artikel ini akan menunjukkan kepada anda cara menggunakan LaravelSanctum untuk menyediakan API untuk SPA anda

See all articles