TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 611 subscribers
Post #275 291
فصل یک - Routing

بخش دوم - معرفی متد های روتینگ - قسمت اول


در این قسمت به 8 تا از پر کاربرد ترین و اصلی ترین متد های موجود در فساد Route می پردازیم:

1- متد get برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP GET پاسخ می‌دهد. این نوع درخواست معمولاً برای دریافت اطلاعات استفاده می‌شود.
Route::get('/users', function () {
return 'List of users';
});

کد بالا به معنی این است که اگر درخواستی را با متد GET به آدرس domain.example/users بدهیم، تابع ناشناس داده شده به متد(اکشن) اجرا خواهد شد.

حال فرض کنید می‌خواهیم مسیری ایجاد کنیم که اطلاعات یک کاربر خاص را بر اساس شناسه (ID) او نمایش دهد. در این صورت، می‌توانیم از پارامترهای داینامیک استفاده کنیم:
Route::get('/user/{id}', function ($id) {
return "User ID is $id";
});

در اینجا، {id} یک پارامتر داینامیک است که می‌تواند هر مقداری باشد. این مقدار از URL استخراج شده و به تابع بسته می‌شود.
توجه داشته باشید که پارامتر id یک پارامتر اجباری است و درصورتی که در url وارد نشود route ما اجرا نخواهد شد.

برای پارامتر های اختیاری می توان به صورت زیر عمل کرد:
Route::get('/user/{id?}', function ($id = 0) {
if ($id == 0){
return "Hello!";
}
return "User ID is $id";
});

پارامتر {id?} یک پارامتر اختیاری است و حتی اگر آن را وارد نکنیم route ما اجرا خواهد شد، اما توجه داشته باشید که مقدار پیشفرض آن را در اکشن تعریف نمایید.

پارامتر های داینامیک برای تمامی متد ها در دسترس هستند.

2- متد post برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP POST پاسخ می‌دهد. این نوع درخواست معمولاً برای ارسال داده به سرور و ایجاد منابع جدید استفاده می‌شود.

Route::post('/users', function () {
return 'User created';
});


3- متد put برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP PUT پاسخ می‌دهد. این نوع درخواست معمولاً برای به‌روزرسانی کامل یک منبع موجود استفاده می‌شود.
Route::put('/users/{id}', function ($id) {
return 'User ' . $id . ' updated';
});


4- متد patch برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP PATCH پاسخ می‌دهد. این نوع درخواست معمولاً برای به‌روزرسانی جزئی یک منبع موجود استفاده می‌شود.
Route::patch('/users/{id}', function ($id) {
return 'User ' . $id . ' partially updated';
});


5- متد delete برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP DELETE پاسخ می‌دهد. این نوع درخواست معمولاً برای حذف یک منبع موجود استفاده می‌شود.
Route::delete('/users/{id}', function ($id) {
return 'User ' . $id . ' deleted';
});


6- متد options برای تعریف مسیری استفاده می‌شود که به درخواست‌های HTTP OPTIONS پاسخ می‌دهد. این نوع درخواست برای بازگشت اطلاعاتی در مورد ارتباطات مجاز برای یک منبع خاص استفاده می‌شود.
Route::options('/users', function () {
return ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'];
});


7- متد any برای تعریف مسیری استفاده می‌شود که به تمامی انواع درخواست‌های HTTP پاسخ می‌دهد. این نوع مسیر معمولاً برای مسیرهایی استفاده می‌شود که باید به تمامی درخواست‌ها پاسخ دهند.
Route::any('/contact', function () {
return 'Contact form';
});


8- متد match به شما اجازه می‌دهد تا یک مسیر را برای چندین نوع درخواست HTTP تعریف کنید. این متد زمانی مفید است که می‌خواهید یک مسیر خاص به چندین متد HTTP مانند GET و POST پاسخ دهد.
Route::match(['get', 'post'], '/contact', function () {
//
});

این متد برخلاف سایر متد های توضیح داده شده یک پارامتر اضافه تر حاوی آرایه ای از متدهای مجاز را در ابتدا دریافت می کند و پس از آن مانند سایر متد ها عمل میکند.

متد های بالا در فایل های web.php و api.php قابل استفاده هستند.

#laravel #فصل_۱
@AmirhDeveloper
.
  • ❤ 1
  • 👍 1
More from @amirhdeveloper
  1. Sep 30, 2026پکیج LaraGram Sentinel منتشر شد؛ یک پنل مانیتورینگ که هیچ چیزی از زیر دستش در نمی‌ره! تمام…
  2. Sep 23, 2026از امروز با کاهش شدید حاکرها مواجه میشیم
  3. Sep 19, 2026🔴 سوال سوم دو Region دارید: US-East و EU-West. کاربران در هر دو Region هستند. سیستم باید…
  4. Sep 19, 2026🟠 سوال دوم فرض کنید Service A به Service B درخواست می‌زند. B به‌دلیل overload، latency با…
  5. Sep 19, 2026🟢 سوال اول فرض کنید یک سرویس backend داریم که به PostgreSQL وصل می‌شود. تعداد requestها ن…
  6. Sep 19, 2026خیلی وقته پست‌های کانال فقط درمورد LaraGram بوده، وقتشه یکم جالب‌ترش کنیم اگر ممبرها هنوز…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →