
آموزش کامل و جامع کوکی cookie ها در لاراول
دراین بخش از دوره آموزش لاراول ، قصد داریم درمورد cookie ها صحبت کنیم. کوکی فایل متنی (text) کوچکی است که سرور ، بر روی کامپیوتر کاربر ذخیره می کند. این اطلاعات معمولا شامل: شناسه کاربری، رمز عبور، سبدخرید و ... می باشد. فایده کوکی این است که در مراجعات بعدی به همان سایت ، اطلاعات کوکی از طریق مرورگر به سرور، برای شناسایی کاربر، ارسال می شود و از پردازش بیش از حد جلوگیری میکند.
اشکالاتی که کوکی ها دارند :
- چون کوکی ها در کامپیوتر کاربر ذخیره می شوند و به سادگی قابل دسترسی هستند، امنیت ضعیفی دارند.
- اگر سرور توسط توسعه دهنده سایت، مدت زمان اعتبار کوکی هار را طولانی نکند، کوکی ها عمر کوتاهی دارند و به زودی پاک می شوند.
در لاراول تمام کوکی ها رمزگذاری می شوند و توسط یک کد اعتبارسنجی ، امضا می شوند. این کار به این دلیل انجام می شود که اگر کاربرِ سایت، تغییری در کوکی ایجاد کند، کوکی نامعتبر تلقی شود.
ساخت کوکی
کوکی در لاراول بوسیله helper سراسری به اسم cookie ساخته می شود. که آن یک نمونه از کلاس Symfony\Component\HttpFoundation\Cookie هست. Cookie می تواند به یک نمونه از کلاس Response بوسیله متد withCookie() پیوست شود. برای ساخت کوکی ، یک متغیر response از نمونه کلاس Illuminate\Http\Response ایجاد می کنیم تا متد withcookie() را صدا بزند.
کوکی هایی که لاراول تولید می کند رمز نگاری شده است و نمی تواند توسط کلاینت ، خوانده یا تغییرداده شوند.
//Create a response instance
$response = new Illuminate\Http\Response('Hello World');
//Call the withCookie() method with the response method
$response->withCookie(cookie('name', 'value', $minutes));
//return the response
return $response;
تابع Cookie() آرگومان های زیادی دارد که ما 3 آرگومان از آن را بررسی میکنیم.
آرگومان اول : نام کوکی را در خود ذخیره می کند.(name)
آرگومان دوم : مقدار کوکی را در خود ذخیره می کند.(value)
آرگومان سوم : مدت زمان اعتبار کوکی در این آرگومان ذخیره می شود و بعد از اتمام این مدت زمان کوکی delete می شود. (minutes)
کوکی می تواند تا ابد بماند که با دستور زیر این امکان میسر می شود. منظور از ابد 5 سال می باشد!
$response->withCookie(cookie()->forever('name', 'value'));
بازیابی کوکی
بعد از اینکه ما کوکی را مقداردهی و تنظیم کردیم، ما می توانیم کوکی را بوسیله متد cookie() بازیابی کنیم. تنها آرگومانی که متد cookie() می گیرد، نام کوکی می باشد. متد cookie() می تواند بوسیله ی نمونه ای از کلاس Illuminate\Http\Request فراخوانی شود.
این کد نمونه ای از آنچه گفتیم است :
//’name’ is the name of the cookie to retrieve the value of
$value = $request->cookie('name');
مثال :
برای فهم بیشتر مطالبی که گفتیم به این مثال دقت کنید.
مرحله 1 – دستور زیر را اجرا کنید تا یک contoller ایجاد شود.
php artisan make:controller CookieController --plain
مرحله 2 – بعد از ساخت controller پیامی مبنی بر موفقت آمیز بودن دستور فوق برای شما نمایش داده می شود.
مرحله 3 – کد زیر را در contoller ساخته شده در مسیر app/Http/Controllers/CookieController.php جایگذاری کنید.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class CookieController extends Controller {
public function setCookie(Request $request){
$minutes = 1;
$response = new Response('Hello World');
$response->withCookie(cookie('name', 'virat', $minutes));
return $response;
}
public function getCookie(Request $request){
$value = $request->cookie('name');
echo $value;
}
}
مرحله 4 – کدهای زیر را در فایل app/Http/routes.php file وارد کنید.
Route::get('/cookie/set','CookieController@setCookie');
Route::get('/cookie/get','CookieController@getCookie');
مرحله 5 – مرورگر خود را باز کنید و URL زیر را در آن وارد کنید.(برای ست کردن کوکی)
http://localhost:8000/cookie/set
مرحله 6 – خروجی کدهای بالا در زیرنمایش داده شده است. پنجره ای که در این تصویر مشاهده می کنید، مربوط به مرورگر firefox هست و در مرورگرهای دیگر ممکن است متفاوت باشد.
مرحله 7 – مرورگر خود را باز کنید و URL زیر را در آن وارد کنید.(برای بازیابی کوکی)
http://localhost:8000/cookie/get
مرحله 8 – خروجی به صورت زیر نمایش داده می شود.
این فصل در یک نگاه:
آشنایی با امکانات جدید لاراول ۷…
برخی از سرفصل های این پکیج آموزشی : لاراول چیست و چرا ما لاراول استفاده میکنیم کامپوزر کارش چیه و نصب اون نصب لاراول آموزش نصب لاراول از طریق اینستالر آموزش نصب لاراول با استفاده ا…این فصل در یک نگاه:
بهترین و پر بازده ترین روش تبدیل بازدیدکننده سایت به مشتری تبلیغات هدفمند و برند سازی هوشمندانه با ایمیل می باشد. ایمیل…
وبینار(سمینار آنلاین) آموزش تکنیک های ایمیل مارکتینگ اگر تا انتها این متن را مطالعه کنید نظر شما در مورد ایمیل مارکتینگ 180 درجه عوض می شود!! بر هیچکس پوشیده نیست که از سال 1972 که ای…این فصل در یک نگاه:
مباحث تکمیلی فریم ورک لاراول…
فصل اول :آموزش مقدماتی فریم ورک لاراول معرفی فریم ورک لاراول و پیشنیازهای انجام کار انجام کانفیگ های اولیه برای نصب و راه اندازی فریم ورک معرفی روش های نصب پروژه لاراولی از طریق سایت گی…این فصل در یک نگاه:
مباحث مقدماتی فریم ورک react.js…
توضیحات کلی مجموعه: فصل اول : آشنایی با مباحث مقدماتی فریم ورک react.js نصب و راه اندازی node.js و کلیه پیش نیازهای لازم نصب فریم ورک react روی لوکال و انجام تست های لازم آغاز آشنایی …