ข้ามไปยังเนื้อหาหลัก
itOffside
Onmobile อ่าน 2 นาที

Laravel - EP8 Response (การส่งค่าตอบกลับไปยังผู้ใช้)

Laravel
สอน 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) ไว้ด้านล่างนี้เลยนะครับ

Onmobile

โปรแกรมเมอร์

ความเห็น

ยังไม่มีความเห็น — มาเป็นคนแรกได้เลย

แสดงความเห็น

ไม่แสดงบนหน้าเว็บ

บทความที่เกี่ยวข้อง