Dengan pembangunan aplikasi web, semakin ramai orang mula menggunakan rangka kerja untuk membina aplikasi mereka sendiri Salah satu rangka kerja yang paling popular ialah Laravel. Laravel menyediakan banyak fungsi dan alatan yang memudahkan pembangunan, termasuk fungsi yang boleh menyembunyikan ID, yang sangat berguna untuk sesetengah aplikasi dengan keperluan keselamatan yang tinggi.
Dalam banyak aplikasi, kunci utama rekod data biasanya ialah id berangka, yang menjadikannya lebih mudah untuk mengurus dan mendapatkan semula data. Walau bagaimanapun, kadangkala kita perlu melindungi rekod data ini untuk mengelakkannya daripada mudah terdedah. Contohnya, jika rekod data kami mengandungi maklumat sensitif, kami hanya mahu membenarkan akses kepada pengguna yang disahkan.
Dalam Laravel, kita boleh menggunakan ciri yang dipanggil pengikatan model laluan untuk menghantar nilai id secara tersirat. Ini bermakna kita boleh menyembunyikan id dalam URL dan masih menggunakannya untuk menanyakan rekod data. Mari lihat bagaimana ini berfungsi.
Mula-mula kita perlu menentukan kunci penghalaan dalam model kita, ini akan menjadi medan yang kita gunakan secara tersirat. Dalam contoh kami, kami akan menggunakan medan slug untuk mengenal pasti rekod data kami.
class Post extends Model { public function getRouteKeyName() { return 'slug'; } }
Seterusnya, kami perlu mengemas kini definisi penghalaan kami untuk menggunakan model dan kekunci penghalaan kami. Sebagai contoh, kita boleh menggunakan laluan berikut untuk memaparkan siaran:
Route::get('/posts/{post}', function (Post $post) { return view('post', compact('post')); });
Ini akan memberikan aplikasi kami URL yang akan memaparkan siaran dengan id 1:
http://example.com/posts/1
Walau bagaimanapun, untuk menyembunyikan id, kami boleh mengemas kini definisi laluan kami untuk menggunakan slug dan bukannya id. Contohnya:
Route::get('/posts/{post:slug}', function (Post $post) { return view('post', compact('post')); });
Kini, kita boleh menggunakan medan slug untuk menggantikan id dalam URL kita. Sebagai contoh, kami boleh menggunakan URL berikut untuk memaparkan siaran yang sama:
http://example.com/posts/my-first-post
Apabila kami membuka URL itu, Laravel akan menggunakan model kami untuk mencari siaran yang sepadan dengan slug "siaran pertama saya" , dan hantarkannya sebagai parameter kepada pengawal kami. Kami boleh mengakses sifat dan kaedah siaran dengan cara yang sama seperti sebelumnya, contohnya:
<h1>{{ $post->title }}</h1> <p>{{ $post->content }}</p>
Dengan menggunakan cara ini, kami boleh menyembunyikan id dalam aplikasi kami dan sebaliknya menggunakan medan. Ini boleh menjadi sangat berguna dalam sesetengah aplikasi, contohnya:
Ringkasnya, rangka kerja Laravel menyediakan banyak alat dan ciri yang berguna, menggunakan pengikatan model laluan boleh membantu kami menyembunyikan ID dan tingkatkan keselamatan dan kemesraan pengguna aplikasi kami. Jika anda seorang pembangun Laravel, adalah disyorkan agar anda mencuba teknik ini untuk meningkatkan kualiti keseluruhan aplikasi anda.
Atas ialah kandungan terperinci Bagaimana untuk menyembunyikan id dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!