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