บริการขั้นสูงของ Google

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

บริการขั้นสูงใน Apps Script ช่วยให้นักพัฒนาซอฟต์แวร์ที่มีประสบการณ์เชื่อมต่อกับ Google API สาธารณะที่มีการตั้งค่าน้อยกว่าการใช้อินเทอร์เฟซ HTTP บริการขั้นสูงมักมี Wrapper ที่บางรอบ Google API ดังกล่าว โดยจะทํางานเหมือนกับบริการในตัวของ Apps Script เช่น ให้บริการการเติมข้อความอัตโนมัติ และ Apps Script จะจัดการขั้นตอนการให้สิทธิ์โดยอัตโนมัติ อย่างไรก็ตาม คุณต้องเปิดใช้บริการขั้นสูงก่อนจึงจะใช้ในสคริปต์ได้

หากต้องการดู Google API ที่พร้อมใช้งานเป็นบริการขั้นสูง ให้มองหาส่วนบริการขั้นสูงของ Google ในข้อมูลอ้างอิง หากคุณต้องการใช้ Google API ที่ไม่มีอยู่ในบริการขั้นสูง เพียงแค่เชื่อมต่อ API ดังกล่าวเหมือน API ภายนอกอื่นๆ

บริการขั้นสูงหรือ HTTP

บริการขั้นสูงของ Google แต่ละรายการจะเชื่อมโยงกับ Google API สาธารณะ ใน Apps Script คุณจะเข้าถึง API เหล่านี้ได้ผ่านทางบริการขั้นสูง หรือเพียงสร้างคําขอ API โดยตรงโดยใช้ UrlFetch

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

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

โดยทั่วไป การใช้บริการขั้นสูงจะเป็นไปได้น้อยที่สุดและใช้วิธีที่ UrlFetch เฉพาะในกรณีที่บริการขั้นสูงไม่มีฟังก์ชันที่คุณต้องการเท่านั้น

ข้อกำหนด

คุณต้องมีคุณสมบัติตรงตามข้อกําหนดต่อไปนี้จึงจะใช้บริการขั้นสูงได้

  1. คุณต้องเปิดใช้บริการขั้นสูงในโปรเจ็กต์สคริปต์
  2. คุณต้องตรวจสอบว่า API ที่เกี่ยวข้องกับบริการขั้นสูงเปิดใช้อยู่ในโปรเจ็กต์ Cloud Platform (GCP)

    หากโปรเจ็กต์สคริปต์ของคุณใช้โปรเจ็กต์ GCP เริ่มต้นซึ่งสร้างขึ้นหลังจากวันที่ 8 เมษายน 2019 ระบบจะเปิดใช้ API โดยอัตโนมัติหลังจากที่คุณเปิดใช้บริการขั้นสูงและบันทึกโปรเจ็กต์สคริปต์ และอาจต้องยอมรับข้อกําหนดในการให้บริการของ Google Cloud Platform และ Google APIs ด้วย หากยังไม่ได้ดําเนินการ

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

โปรดดูข้อมูลเพิ่มเติมที่โครงการ Cloud Platform

เปิดใช้บริการขั้นสูง

หากต้องการใช้บริการของ Google ขั้นสูง ให้ทําตามวิธีการต่อไปนี้

  1. เปิดโครงการ Apps Script
  2. คลิกตัดต่อวิดีโอ ที่ด้านซ้าย
  3. ทางด้านซ้ายถัดจากบริการ ให้คลิกเพิ่มบริการ
  4. เลือกบริการขั้นสูงของ Google แล้วคลิกเพิ่ม

หลังจากเปิดใช้บริการขั้นสูงแล้ว บริการดังกล่าวจะพร้อมใช้งานในการเติมข้อความอัตโนมัติ

วิธีกําหนดลายเซ็นของเมธอด

โดยทั่วไป บริการขั้นสูงจะใช้ออบเจ็กต์ ชื่อเมธอด และพารามิเตอร์เหมือนกับ API สาธารณะที่เกี่ยวข้อง แม้ว่าจะมีการแปลลายเซ็นของเมธอดเพื่อการใช้งานใน Apps Script ก็ตาม โดยปกติแล้ว ฟังก์ชันเติมข้อความอัตโนมัติของเครื่องมือแก้ไขสคริปต์จะให้ข้อมูลที่เพียงพอสําหรับการเริ่มต้นใช้งาน แต่กฎด้านล่างจะอธิบายวิธีที่ Apps Script สร้างลายเซ็นของเมธอดจาก Google API สาธารณะ

คําขอที่ส่งไปยัง Google API สามารถยอมรับข้อมูลประเภทต่างๆ เช่น พารามิเตอร์เส้นทาง พารามิเตอร์การค้นหา เนื้อหาคําขอ และ/หรือไฟล์แนบที่อัปโหลดสื่อ บริการขั้นสูงบางอย่างยังยอมรับส่วนหัวคําขอ HTTP ที่เจาะจงได้อีกด้วย (เช่น บริการขั้นสูงของปฏิทิน)

ลายเซ็นของเมธอดใน Google Apps Script ที่เกี่ยวข้องมีอาร์กิวเมนต์ต่อไปนี้

  1. เนื้อหาของคําขอ (โดยปกติจะเป็นทรัพยากร) เป็นออบเจ็กต์ JavaScript
  2. เส้นทางหรือพารามิเตอร์ที่จําเป็นเป็นอาร์กิวเมนต์แต่ละรายการ
  3. ไฟล์แนบในการอัปโหลดสื่อเป็นอาร์กิวเมนต์ของ Blob
  4. พารามิเตอร์ที่ไม่บังคับในฐานะชื่อพารามิเตอร์การแมปออบเจ็กต์ของ JavaScript เป็นค่า
  5. ส่วนหัวของคําขอ HTTP เป็นชื่อส่วนหัวการแมปออบเจ็กต์ JavaScript กับค่าส่วนหัว

หากวิธีการไม่มีรายการใดๆ ในหมวดหมู่หนึ่งๆ ระบบจะไม่สนใจส่วนนั้นของลายเซ็น

มีข้อยกเว้นบางอย่างที่ควรทราบเป็นพิเศษ ดังนี้

  • สําหรับวิธีการที่ยอมรับการอัปโหลดสื่อ ระบบจะตั้งค่าพารามิเตอร์ uploadType โดยอัตโนมัติ
  • เมธอดที่ชื่อ delete ใน Google API จะมีชื่อว่า remove ใน Apps Script เนื่องจาก delete เป็นคําที่สงวนไว้ใน JavaScript
  • หากมีการกําหนดค่าบริการขั้นสูงให้ยอมรับส่วนหัวของคําขอ HTTP และตั้งค่าออบเจ็กต์ JavaScript ของส่วนหัวคําขอแล้ว คุณต้องตั้งค่าพารามิเตอร์ JavaScript ที่ไม่บังคับด้วย (เป็นออบเจ็กต์ว่างเปล่าในกรณีที่คุณไม่ได้ใช้พารามิเตอร์ที่ไม่บังคับ)

การสนับสนุนสําหรับบริการขั้นสูง

บริการขั้นสูงเป็นเพียง Wrapper แบบบาง ซึ่งเปิดใช้ Google API ภายใน Apps Script ได้ ดังนั้นปัญหาที่พบขณะใช้งานมักจะเป็นปัญหาที่เกิดกับ API ที่สําคัญ ไม่ใช่ปัญหาของ Apps Script

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