วิธีใช้ Curl และ JavaScript Fetch สำหรับคำขอ API

คู่มือ API: ใช้ curl และ fetch ใน JavaScript! เรียนรู้ข้อดี & พัฒนาทักษะ!

อาชว์

อาชว์

4 June 2025

วิธีใช้ Curl และ JavaScript Fetch สำหรับคำขอ API

```html

ในโลกของการพัฒนาเว็บ การสร้างคำขอ API เป็นงานพื้นฐาน ไม่ว่าคุณกำลังสร้างแอปพลิเคชัน front-end, บริการ back-end หรือทดสอบ API การรู้ว่าจะสร้างคำขอเหล่านี้อย่างมีประสิทธิภาพเป็นสิ่งสำคัญ เครื่องมือยอดนิยมสองอย่างสำหรับจุดประสงค์นี้คือ curl และ JavaScript fetch คู่มือนี้จะนำคุณไปสู่การใช้งานเครื่องมือเหล่านี้ โดยให้ตัวอย่างและการเคล็ดลับที่เป็นประโยชน์

ก่อนที่เราจะเจาะลึก หากคุณกำลังมองหาวิธีง่ายๆ ในการทดสอบ API ของคุณ ฉันขอแนะนำให้ดาวน์โหลด Apidog ฟรี Apidog ช่วยลดความซับซ้อนของกระบวนการทดสอบ API ทำให้การทำงานกับ API ที่ซับซ้อนเป็นเรื่องง่าย

button

ทำความเข้าใจเกี่ยวกับคำขอ API

API คืออะไร?

API (Application Programming Interface) คือชุดของกฎที่ช่วยให้เอนทิตีซอฟต์แวร์ต่างๆ สื่อสารกันได้ APIs กำหนดวิธีการและรูปแบบข้อมูลที่แอปพลิเคชันสามารถใช้เพื่อโต้ตอบกับบริการภายนอก ฐานข้อมูล หรือแอปพลิเคชันอื่นๆ

ทำไมต้องใช้คำขอ API?

คำขอ API เป็นสิ่งจำเป็นสำหรับการดึงข้อมูลจากเซิร์ฟเวอร์ การส่งข้อมูลเพื่อประมวลผล และการโต้ตอบกับบริการเว็บต่างๆ พวกเขาเป็นกระดูกสันหลังของเว็บแอปพลิเคชันสมัยใหม่ ทำให้สามารถทำงานต่างๆ ได้ เช่น การตรวจสอบสิทธิ์ผู้ใช้ การดึงข้อมูล และการผสานรวมของบุคคลที่สาม

บทนำสู่ cURL

cURL คืออะไร?

cURL เป็นเครื่องมือบรรทัดคำสั่งที่ใช้สำหรับการถ่ายโอนข้อมูลด้วย URL รองรับโปรโตคอลที่หลากหลาย รวมถึง HTTP, HTTPS, FTP และอื่นๆ อีกมากมาย curl ถูกนำมาใช้อย่างแพร่หลายสำหรับการทดสอบ APIs การดาวน์โหลดไฟล์ และการดำเนินการคำขอเว็บ

Curl Logo

การติดตั้ง cURL

cURL ได้รับการติดตั้งไว้ล่วงหน้าบนระบบส่วนใหญ่ที่ใช้ Unix รวมถึง macOS และ Linux สำหรับ Windows คุณสามารถดาวน์โหลดได้จาก เว็บไซต์ curl อย่างเป็นทางการ

หากต้องการตรวจสอบว่า cURL ติดตั้งอยู่ในระบบของคุณหรือไม่ ให้เปิดเทอร์มินัลหรือพรอมต์คำสั่งของคุณแล้วเรียกใช้:

curl --version

การใช้งานพื้นฐานของ cURL

การสร้างคำขอ GET อย่างง่าย

หากต้องการสร้างคำขอ GET พื้นฐานด้วย cURL คุณสามารถใช้คำสั่งต่อไปนี้:

curl https://api.example.com/data

คำสั่งนี้จะดึงข้อมูลจาก URL ที่ระบุ

การเพิ่มส่วนหัว

บางครั้ง คุณต้องเพิ่มส่วนหัวลงในคำขอของคุณ สามารถทำได้โดยใช้แฟล็ก -H:

curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://api.example.com/data

การสร้างคำขอ POST

หากต้องการส่งข้อมูลไปยังเซิร์ฟเวอร์ คุณสามารถใช้วิธี POST นี่คือวิธีที่คุณสามารถทำได้ด้วย curl:

curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' https://api.example.com/data

ในคำสั่งนี้ -X POST ระบุวิธีการร้องขอ -H เพิ่มส่วนหัว และ -d ส่งข้อมูล

บทนำสู่ JavaScript fetch

JavaScript fetch คืออะไร?

API fetch เป็นอินเทอร์เฟซสมัยใหม่ที่ช่วยให้คุณสร้างคำขอ HTTP จากเบราว์เซอร์ เป็นทางเลือกที่ง่ายกว่าและมีประสิทธิภาพมากกว่า XMLHttpRequest และถูกนำมาใช้อย่างแพร่หลายในการพัฒนา front-end

การใช้งานพื้นฐานของ fetch

การสร้างคำขอ GET อย่างง่าย

นี่คือวิธีที่คุณสามารถสร้างคำขอ GET โดยใช้ fetch:

fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

โค้ดนี้จะดึงข้อมูลจาก URL ที่ระบุและบันทึกลงในคอนโซล

การเพิ่มส่วนหัว

หากต้องการเพิ่มส่วนหัวลงในคำขอ fetch ของคุณ คุณสามารถใช้ตัวเลือก headers:

fetch('https://api.example.com/data', {
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
  }
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

การสร้างคำขอ POST

หากต้องการส่งข้อมูลไปยังเซิร์ฟเวอร์โดยใช้ fetch คุณสามารถใช้วิธี POST:

fetch('https://api.example.com/data', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ key: 'value' })
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

การเปรียบเทียบ cURL และ JavaScript fetch

กรณีการใช้งาน

cURL เหมาะสำหรับ:

JavaScript fetch เหมาะสำหรับ:

ไวยากรณ์และการใช้งาน

cURL ใช้ส่วนต่อประสานบรรทัดคำสั่งพร้อมไวยากรณ์ที่อาจซับซ้อนด้วยตัวเลือกขั้นสูง อย่างไรก็ตาม มันมีประสิทธิภาพและยืดหยุ่นอย่างยิ่ง

JavaScript fetch ในทางกลับกัน มีไวยากรณ์ที่อ่านง่ายกว่าและใช้ promise ทำให้ง่ายต่อการจัดการการดำเนินการแบบอะซิงโครนัสและจัดการการตอบสนอง

การจัดการข้อผิดพลาด

การจัดการข้อผิดพลาดใน cURL ทำได้โดยใช้รหัสออกและการแยกวิเคราะห์การตอบสนองด้วยตนเอง ใน JavaScript fetch การจัดการข้อผิดพลาดทำได้ง่ายกว่าด้วยบล็อก catch ซึ่งให้วิธีที่ใช้งานง่ายกว่าในการจัดการข้อยกเว้น

ตัวอย่างที่เป็นประโยชน์

ตัวอย่างที่ 1: การดึงข้อมูลผู้ใช้

การใช้ cURL

curl https://jsonplaceholder.typicode.com/users

คำสั่งนี้จะดึงรายชื่อผู้ใช้จาก API ตัวยึดตำแหน่ง

การใช้ JavaScript fetch

fetch('https://jsonplaceholder.typicode.com/users')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

ตัวอย่างที่ 2: การส่งแบบฟอร์ม

การใช้ cURL

curl -X POST -H "Content-Type: application/json" -d '{"name":"John Doe","email":"john.doe@example.com"}' https://jsonplaceholder.typicode.com/users

การใช้ JavaScript fetch

fetch('https://jsonplaceholder.typicode.com/users', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ name: 'John Doe', email: 'john.doe@example.com' })
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

การใช้ Apidog เพื่อลดความซับซ้อนของคำขอ API

หากคุณต้องการปรับปรุงเวิร์กโฟลว์ API ของคุณให้คล่องตัวยิ่งขึ้น ลองพิจารณาใช้ Apidog Apidog เป็นเครื่องมือที่มีประสิทธิภาพซึ่งออกแบบมาเพื่อให้การจัดการ API เป็นเรื่องง่ายและมีประสิทธิภาพ มีคุณสมบัติต่างๆ เช่น เอกสารประกอบ API การทดสอบ และการตรวจสอบในที่เดียว

button

ทำไมต้องใช้ Apidog?

apidog interface

เริ่มทำงานกับ cURL APIs โดยการนำเข้าสู่ Apidog

Apidog รองรับผู้ใช้ที่ต้องการนำเข้าคำสั่ง cURL ไปยัง Apidog ในโปรเจ็กต์ที่ว่างเปล่า ให้คลิกปุ่ม + สีม่วงรอบส่วนบนซ้ายของหน้าต่าง Apidog แล้วเลือก Import cURL

stripe curl code sample

คัดลอกและวางคำสั่ง cURL ลงในช่องที่แสดงบนหน้าจอของคุณ

curl code import success

หากสำเร็จ คุณควรจะสามารถดูคำสั่ง cURL ในรูปแบบของคำขอ API ได้

สร้างโค้ด Javascript Fetch ทันที

Apidog สามารถสร้างโค้ด Javascript ที่จำเป็นสำหรับแอปพลิเคชันของคุณได้ในพริบตา

ขั้นแรก ให้ค้นหาปุ่ม </> Generate Code บน API หรือคำขอใดๆ แล้วเลือก Generate Client Code ในรายการแบบเลื่อนลง

Select javascript

ถัดไป เลือก Javascript และค้นหาส่วน Fetch ตอนนี้คุณควรเห็นโค้ดที่สร้างขึ้น สิ่งที่คุณต้องทำคือคัดลอกและวางลงใน IDE (Integrated Development Environment) ของคุณและดำเนินการพัฒนาแอปพลิเคชันของคุณต่อไป

แนวทางปฏิบัติที่ดีที่สุดสำหรับคำขอ API

การรักษาความปลอดภัย API Keys

รักษาความปลอดภัย API keys ของคุณเสมอ หลีกเลี่ยงการฮาร์ดโค้ดในโค้ดของคุณ โดยเฉพาะอย่างยิ่งในแอปพลิเคชัน front-end ใช้ตัวแปรสภาพแวดล้อมหรือตู้เก็บของที่ปลอดภัยเพื่อจัดการคีย์ของคุณ

การจัดการข้อผิดพลาด

การจัดการข้อผิดพลาดที่เหมาะสมช่วยให้มั่นใจได้ว่าแอปพลิเคชันของคุณสามารถจัดการความล้มเหลวได้อย่างราบรื่น ตรวจสอบรหัสสถานะการตอบสนองและจัดการข้อผิดพลาดอย่างเหมาะสมเสมอ

การเพิ่มประสิทธิภาพ

สำหรับการเพิ่มประสิทธิภาพ ให้พิจารณา:

หัวข้อขั้นสูง

การใช้ cURL กับสคริปต์

คุณสามารถทำให้คำสั่ง cURL เป็นแบบอัตโนมัติโดยใช้สคริปต์เชลล์ ซึ่งมีประโยชน์สำหรับงานที่ทำซ้ำๆ เช่น การดึงข้อมูล การประมวลผลแบบกลุ่ม หรือการทดสอบ APIs

#!/bin/bash
API_URL="https://api.example.com/data"
API_KEY="your_api_key"

response=$(curl -H "Authorization: Bearer $API_KEY" $API_URL)
echo $response

การใช้ fetch กับ Async/Await

async และ await ทำให้คำขอ fetch อ่านง่ายและจัดการได้ง่ายยิ่งขึ้น:

async function fetchData() {
  try {
    const response = await fetch('https://api.example.com/data');
    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Error:', error);
  }
}

fetchData();

บทสรุป

ในคู่มือนี้ เราได้สำรวจวิธีการสร้างคำขอ API โดยใช้ cURL และ JavaScript fetch เครื่องมือทั้งสองมีจุดแข็งของตัวเองและเหมาะสำหรับงานที่แตกต่างกัน cURL เก่งในการดำเนินการบรรทัดคำสั่งและการเขียนสคริปต์ ในขณะที่ fetch เหมาะสำหรับเว็บแอปพลิเคชันและการดำเนินการแบบอะซิงโครนัส

โปรดจำไว้ว่า หากคุณต้องการลดความซับซ้อนของกระบวนการทดสอบ API ของคุณ ให้พิจารณา ดาวน์โหลด Apidog ฟรี เป็นเครื่องมือที่ยอดเยี่ยมที่ทำให้การทำงานกับ APIs ง่ายขึ้นมาก

button

```

Explore more

สร้างทางเลือกสำหรับ Claude Web Search แบบ Open Source (พร้อมเซิร์ฟเวอร์ Firecrawl MCP)

สร้างทางเลือกสำหรับ Claude Web Search แบบ Open Source (พร้อมเซิร์ฟเวอร์ Firecrawl MCP)

สำหรับองค์กรที่ต้องการควบคุม, ปรับแต่ง, หรือความเป็นส่วนตัวมากกว่าการค้นหาเว็บของ Claude, การสร้างทางเลือกโดยใช้ Firecrawl เป็นทางออกที่ดี มาเรียนรู้กัน!

21 March 2025

10 อันดับทางเลือกที่ดีที่สุดสำหรับการเล่นวินเซิร์ฟสำหรับนักเขียนโค้ดที่ชอบความรู้สึกในปี 2025

10 อันดับทางเลือกที่ดีที่สุดสำหรับการเล่นวินเซิร์ฟสำหรับนักเขียนโค้ดที่ชอบความรู้สึกในปี 2025

ค้นพบ 10 ทางเลือก Windsurf ปี 2025 ปรับปรุงการเขียนโค้ด เหมาะสำหรับนักพัฒนาที่ต้องการโซลูชันการเขียนโค้ดที่มีประสิทธิภาพ ปลอดภัย และหลากหลาย

20 March 2025

Figma มีเซิร์ฟเวอร์ MCP แล้ว และนี่คือวิธีใช้งาน

Figma มีเซิร์ฟเวอร์ MCP แล้ว และนี่คือวิธีใช้งาน

ค้นพบวิธีเชื่อมต่อ Figma MCP กับ AI เช่น Cursor เพื่อสร้างโค้ดอัตโนมัติ เหมาะสำหรับนักพัฒนาและนักออกแบบ

20 March 2025

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API