فهرست:

یک وب اپلیکیشن متناسب با در خواست های مختلف به درخواست کاربر پاسخ می دهد. در این مبحث شما را با پاسخ های مختلف در وب اپلیکیشن های تولید شده توسط لاراول آشنا خواهیم کرد.

یک Response ساده در لاراول

لاراول چندین روش مختلف برای بازگشت Response فراهم می کند. Response را می توان از طریق روتر یا از طریق کنترلر ارسال کرد. در مثال زیر یک Response ساده را که بصورت یک String است نمایش می دهیم، این پاسخ به طور خودکار مناسب با در خواست HTTP ایجاد خواهد شد. کد زیر را در فایل app/Http/routes.php قرار دهید.

[pastacode lang=”php” manual=”Route%3A%3Aget(‘%2Fbasic_response’%2C%20function%20()%20%7B%0A%20%20%20return%20’Hello%20World’%3B%0A%7D)%3B” message=”app/Http/routes.php” highlight=”” provider=”manual”/]

برای تست Response مورد نظر آدرس زیر را بررسی نمایید.

[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Fbasic_response” message=”” highlight=”” provider=”manual”/]

خروجی مرورگر شما باید بصورت زیر باشد.

[pastacode lang=”markup” manual=”Hello%20World” message=”” highlight=”” provider=”manual”/]

Attaching Headers

Response را می توان با استفاده از متد header به هدرها پیوست کرد. ما همچنین می توانیم سری هدرها را همانطور که در کد نمونه زیر نشان داده شده پیوست کنیم.

[pastacode lang=”php” manual=”return%20response(%24content%2C%24status)%0A%20%20%20-%3Eheader(‘Content-Type’%2C%20%24type)%0A%20%20%20-%3Eheader(‘X-Header-One’%2C%20’Header%20Value’)%0A%20%20%20-%3Eheader(‘X-Header-Two’%2C%20’Header%20Value’)%3B” message=”” highlight=”” provider=”manual”/]

برای بررسی بهتر مثال زیر را بررسی نمایید، فایل app/Http/routes.php بصورت زیر ویرایش نمایید.

[pastacode lang=”php” manual=”Route%3A%3Aget(‘%2Fheader’%2Cfunction()%20%7B%0A%20%20%20return%20response(%22Hello%22%2C%20200)-%3Eheader(‘Content-Type’%2C%20’text%2Fhtml’)%3B%0A%7D)%3B” message=”app/Http/routes.php” highlight=”” provider=”manual”/]

آدرس زیر را اجرا نمایید.

[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Fheader” message=”” highlight=”” provider=”manual”/]

خروجی مرورگر شما باید بصورت زیر باشد.

[pastacode lang=”markup” manual=”Hello” message=”” highlight=”” provider=”manual”/]

Attaching Cookies

از متد withcookie در helper برای پیوست کوکی ها استفاده می شود. کوکی تولید شده در این متد را می توان با فراخوانی متد withcookie به Response پیوست کرد. به طور پیش فرض، تمام کوکی های تولید شده در لاراول رمزگذاری و امضا شده اند تا توسط مشتری قابل اصلاح یا خواندن نباشند. برای بررسی بهتر مثال زیر را بررسی نمایید، فایل app/Http/routes.php بصورت زیر ویرایش نمایید.

[pastacode lang=”php” manual=”Route%3A%3Aget(‘%2Fcookie’%2Cfunction()%20%7B%0A%20%20%20return%20response(%22Hello%22%2C%20200)-%3Eheader(‘Content-Type’%2C%20’text%2Fhtml’)%0A%20%20%20%20%20%20-%3Ewithcookie(‘name’%2C’Virat%20Gandhi’)%3B%0A%7D)%3B” message=”app/Http/routes.php” highlight=”” provider=”manual”/]

آدرس زیر را اجرا نمایید.

[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Fcookie” message=”” highlight=”” provider=”manual”/]

خروجی مرورگر شما باید بصورت زیر باشد.

[pastacode lang=”markup” manual=”Hello” message=”” highlight=”” provider=”manual”/]

JSON Response

خروجی JSON را می توان با استفاده از متد json ارسال کرد. این متد به صورت خودکار سربرگ Content-Type را روی application/json تنظیم می کند. متد json آرایه دریافتی شما را به صورت خودکار به پاسخ json مناسب تبدیل می کند. برای بررسی بهتر مثال زیر را بررسی نمایید، فایل app/Http/routes.php بصورت زیر ویرایش نمایید.

[pastacode lang=”php” manual=”Route%3A%3Aget(‘json’%2Cfunction()%20%7B%0A%20%20%20return%20response()-%3Ejson(%5B’site’%20%3D%3E%20’uclass’%2C%20’lesson’%20%3D%3E%20’Laravel’%5D)%3B%0A%7D)%3B” message=”app/Http/routes.php” highlight=”” provider=”manual”/]

آدرس زیر را اجرا نمایید.

[pastacode lang=”markup” manual=”http%3A%2F%2Flocalhost%3A8000%2Fjson%0A” message=”” highlight=”” provider=”manual”/]

خروجی مرورگر شما باید بصورت زیر باشد.

[pastacode lang=”markup” manual=”%7B%22site%22%3A%22uclass%22%2C%20%22lesson%22%3A%22Laravel%22%7D” message=”” highlight=”” provider=”manual”/]