Google Apps Script:
ส่งคำขอ HTTP

วิธีการ:

ใน Google Apps Script วิธีหลักในการส่งคำขอ HTTP คือการใช้บริการ UrlFetchApp บริการนี้มีวิธีการให้ทำคำขอ HTTP GET และ POST นี่เป็นตัวอย่างง่ายๆของการทำคำขอ GET เพื่อดึงข้อมูล JSON:

function fetchJsonData() {
  var url = 'https://api.example.com/data';
  var response = UrlFetchApp.fetch(url);
  var json = response.getContentText();
  var data = JSON.parse(json);
  
  Logger.log(data);
}

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

function postExample() {
  var url = 'https://api.example.com/post';
  var payload = {
    key1: 'value1',
    key2: 'value2'
  };
  
  var options = {
    'method' : 'post',
    'contentType': 'application/json',
    // แปลงวัตถุ JavaScript เป็นสตริง JSON
    'payload' : JSON.stringify(payload)
  };
  
  var response = UrlFetchApp.fetch(url, options);
  Logger.log(response.getContentText());
}

ตัวอย่างเหล่านี้แสดงการดำเนินการคำขอ GET และ POST พื้นฐาน ผลลัพธ์จะขึ้นอยู่กับการตอบสนองของ API และสามารถดูได้ใน Logger ของ Google Apps Script

ศึกษาลึกลงไป

บริการ UrlFetchApp ของ Google Apps Script ได้พัฒนาขึ้นอย่างมากตั้งแต่เริ่มต้น โดยนำเสนอการควบคุมที่ละเอียดอ่อนยิ่งขึ้นเกี่ยวกับคำขอ HTTP ด้วยคุณสมบัติเช่นการตั้งค่าหัวข้อ ข้อมูลระบุ และการจัดการ multipart/form-data สำหรับการอัปโหลดไฟล์ แม้ว่าจะให้วิธีการที่ตรงไปตรงมาในการผสานรวมเว็บเซอร์วิสภายนอก แต่นักพัฒนาที่มาจากภาษาเบื้องหลังที่มีความสามารถมากขึ้นอาจพบว่าฟังก์ชันการทำงานมีข้อจำกัดบางประการเมื่อเปรียบเทียบกับไลบรารีเช่น requests ของ Python หรือ fetch API ใน Node.js ของ JavaScript

ข้อจำกัดหนึ่งที่น่าสังเกตคือเวลาการดำเนินการสำหรับ Google Apps Script ซึ่งส่งผลกระทบต่อคำขอที่ใช้เวลานาน นอกจากนี้ ในขณะที่ UrlFetchApp ครอบคลุมช่วงการใช้งานที่กว้าง สถานการณ์ที่ซับซ้อนยิ่งขึ้นที่เกี่ยวข้องกับการรับรองความถูกต้องของ OAuth หรือการจัดการข้อมูลที่มีขนาดใหญ่มากอาจต้องการวิธีการสร้างสรรค์หรือใช้ทรัพยากร Google Cloud เพิ่มเติม

อย่างไรก็ตาม สำหรับการผสานรวมส่วนใหญ่ที่นักพัฒนา Google Workspace พบเจอ - ตั้งแต่การเรียกข้อมูลโดยอัตโนมัติไปจนถึงการโพสต์อัปเดตไปยังบริการภายนอก - UrlFetchApp ให้เครื่องมือที่มีประสิทธิภาพและเข้าถึงได้ง่าย การผสานรวมเข้ากับ Google Apps Script หมายความว่าไม่จำเป็นต้องใช้ไลบรารีภายนอกหรือการตั้งค่าที่ซับซ้อน ทำให้การดำเนินการคำขอ HTTP นั้นทำได้ค่อนข้างง่ายในข้อจำกัดของ Google Apps Script ในขณะที่ภูมิทัศน์ของเว็บ API ยังคงขยายตัว UrlFetchApp ยังคงเป็นสะพานสำคัญสำหรับโปรแกรม Google Apps Script เพื่อโต้ตอบกับโลกภายนอกอีโคซิสเต็มของ Google