Laravel - EP8 Response (การส่งค่าตอบกลับไปยังผู้ใช้)
Laravel
ในการทำเว็บไซต์หรือระบบเว็บแอพลิเคชั่น ผู้ใช้มีการ Request (ร้องขอ) ข้อมูลไปยัง Server (Laravel) ดังนั้นแล้ว ตัว Server (Laravel) ก็จะต้องมีการ Response (ตอบกลับ) ผลลัพท์ไปหาผู้ใช้งาน ดังนั้นบทความนี้จะอธิบายรายละเอียดและวิธีการในการเขียนโปรแกรมการตอบกลับใน Laravel กันครับ
เริ่มต้น
Laravel มีหลายวิธีการในการ Response โดยเราจะไปเขียน Response ที่ Controller เดี่ยวลองดูการทำ Response แบบง่ายๆก่อนด้วยการส่งข้อความ "Hello world"
ตัวอย่าง
ให้เราไปสร้าง Controller ในตัวอย่าง ชื่อ BaseController.php แล้วเขียนคำสั่ง code ลงไป
public function demo()
{
return 'Hellow world';
}
หากเราต้องการ response เป็นค่า Array สามารถทำได้ดังนี้
public function demo()
{
return ['apple', 'mango', 'lemon'];
}
การแนบข้อมูล Header Response
เราสามารถแนบข้อมูลไปไว้ใน Header แล้ว response กลับไปยังผู้ใช้ได้โดยวิธีการมีดังนี้
public function demo()
{
return response('Hello world', 200)
->header('Content-Type', 'text/plain')
->header('X-Header-One', 'Header Value 1');
}
ผลลัพท์ก็ได้ พร้อมกับ Header

JSON Response
การ Response แบบ JSON เป็นที่นิยมอย่างมากเนื่องจากว่า มาตราฐาน API นิยมใช้ syntax JSON โดยเราจะใช้ method json() จากนั้นข้อมูลที่เราต้องการจะส่งจะถูกแปลงให้อยู่ในรูปแบบ JSON เองอัตโนมัติ ลองมาดูตัวอย่างกันครับ
public function demo()
{
return response()->json([
'name' => 'Tawatsak',
'sex' => 'Male',
'country' => 'Thailand'
]);
}
ผลลัพท์ที่ได้

โดย method json() นี้จะแปลง Header Content-Tyype=application/json ให้เราอัตโนมัติ เราไม่ต้องไปทำอะไร
View Redirect
หากเราต้องการ Redirect ก็สามารถทำได้โดยใช้คำสั่งนี้
public function demo()
{
return redirect('home/dashboard');
}
โดยเส้นทางที่จะไปคือ domain.com/home/dashboard
หากต้องการ Redirect ไปลิงค์ด้านนอกก็ทำได้โดยใช้คำสั่งนี้
public function demo()
{
return redirect()->away('https://www.itoffside.com');
}
สำหรับบทความนี้ก็จบเพียงเท่านี้ หากใครมีข้อสงสัยต้องการสอบถามเพิ่มเติม สามารถแสดงความคิดเห็น(Comment) ไว้ด้านล่างนี้เลยนะครับ
แชร์บทความนี้
โปรแกรมเมอร์
itOffside
ความเห็น
ยังไม่มีความเห็น — มาเป็นคนแรกได้เลย