API (Application Programming Interfaces)
API ใน Google Cloud : Jarntam
การทดลองห้องปฏิบัติการกำหนดการ15 นาทีสกุลเงินสากล_alt1 หน่วยกิตแสดงแผนภูมิเบื้องต้น
ข้อมูลห้องปฏิบัติการนี้อาจนำเครื่องมือ AI มาใช้เพื่อสนับสนุนการเรียนรู้ของคุณ
จีเอสพี294
ภาพรวม
API (Application Programming Interfaces) คือโปรแกรมซอฟต์แวร์ที่ช่วยให้นักพัฒนาสามารถเข้าถึงทรัพยากรการประมวลผลและข้อมูลได้ บริษัทจากหลากหลายสาขาต่างนำเสนอ API ที่เปิดให้ใช้งานได้ทั่วไป เพื่อให้นักพัฒนาสามารถผสานรวมเครื่องมือ บริการ หรือไลบรารีเฉพาะทางเข้ากับแอปพลิเคชันและโค้ดของตนเองได้
แล็บนี้จะทบทวนสถาปัตยกรรมและการทำงานพื้นฐานของ API นอกจากนี้ยังให้ฝึกฝนการใช้งานจริง โดยคุณจะได้กำหนดค่าและเรียกใช้ เมธอด ของ Cloud Storage APIใน Google Cloud Shell การทำแล็บนี้จะช่วยให้คุณเข้าใจหลักการสำคัญของการสื่อสาร สถาปัตยกรรม และการตรวจสอบสิทธิ์ของ API คุณยังจะได้รับประสบการณ์จริงเกี่ยวกับการใช้งาน API ซึ่งคุณสามารถนำไปใช้ในแล็บหรือโครงการอื่นๆ ในอนาคตได้
API คืออะไร และทำไมต้องใช้งาน
ความสามารถในการเข้าถึงข้อมูลและทรัพยากรการประมวลผลช่วยเพิ่มประสิทธิภาพการทำงานของนักพัฒนาได้อย่างมาก การใช้ API นั้นง่ายกว่าการสร้างโปรแกรม เมธอด หรือชุดข้อมูลทุกอย่างตั้งแต่เริ่มต้นมาก API สร้างขึ้นบนหลักการของนามธรรม คุณไม่จำเป็นต้องเข้าใจการทำงานภายในหรือความซับซ้อนของ API เพื่อใช้งานในสภาพแวดล้อมของคุณเอง
โดยทั่วไปแล้ว API ถูกสร้างขึ้นโดยคำนึงถึงนักพัฒนาเป็นหลัก และมักไม่มีส่วนติดต่อผู้ใช้แบบกราฟิก (GUI) อย่างไรก็ตาม มีข้อยกเว้นสำหรับมาตรฐานนี้ Google ได้เปิดตัวเครื่องมือใหม่ที่เรียกว่าAPIs Explorerซึ่งช่วยให้คุณสามารถสำรวจ API ต่างๆ ของ Google ได้อย่างมีปฏิสัมพันธ์ (อย่าลืมลองทำ แบบฝึกหัด APIs Explorer: Qwik Startต่อหากคุณสนใจเรียนรู้เพิ่มเติม)
API บนคลาวด์
Google มี API ที่สามารถนำไปใช้ในหลากหลายสาขาและภาคส่วนได้ API มักถูกใช้ในการพัฒนาเว็บ การเรียนรู้ของเครื่อง วิทยาศาสตร์ข้อมูล และกระบวนการทำงานด้านการบริหารระบบ อย่างไรก็ตาม นี่เป็นเพียงตัวอย่างเล็กน้อยเท่านั้น ตัวอย่างเช่น การสำรวจAnyAPIจะเห็นว่ามี API มากมายให้เลือกใช้
เมื่อ Qwiklabs สร้างโปรเจ็กต์ Google Cloud ใหม่สำหรับอินสแตนซ์แล็บ ระบบจะเปิดใช้งาน API ส่วนใหญ่โดยอัตโนมัติ เพื่อให้คุณสามารถเริ่มทำงานในภารกิจของแล็บได้ทันที แต่ถ้าคุณสร้างโปรเจ็กต์ของคุณเองนอกเหนือจาก Qwiklabs คุณจะต้องเปิดใช้งาน API บางอย่างด้วยตนเอง
เมื่อคุณมีความเชี่ยวชาญในการใช้งาน Google Cloud มากขึ้น คุณก็จะใช้ API ในขั้นตอนการทำงานของคุณมากขึ้น ผู้ใช้ที่มีประสบการณ์จะผสานรวมและใช้งาน Cloud API ในสภาพแวดล้อมภายในองค์กรของตนเกือบทั้งหมด โดยแทบจะไม่ใช้ Cloud Console ในการเรียกใช้เครื่องมือและบริการต่างๆ เลย มีแบบฝึกหัดปฏิบัติจริงมากมายให้คุณได้ฝึกฝนการใช้งาน Google API ต่างๆ ในภาษาโปรแกรมที่หลากหลาย
ในห้องปฏิบัติการนี้ คุณจะได้สำรวจคลัง APIเพื่อดูว่ามี Google API อะไรบ้างที่สามารถใช้งานได้
วัตถุประสงค์
ในห้องปฏิบัติการนี้ คุณจะได้เรียนรู้เกี่ยวกับ:
Google API
สถาปัตยกรรม API
โปรโตคอลและวิธีการ HTTP
จุดสิ้นสุด
REST (Representational State Transfer) และ RESTful API
JSON (JavaScript Object Notation)
บริการตรวจสอบสิทธิ์ API
ข้อกำหนดเบื้องต้น
นี่คือ แล็บ ระดับเบื้องต้นโดยสมมติว่าผู้เรียนมีความรู้เกี่ยวกับ API หรือประสบการณ์การใช้งาน Google API น้อยมากหรือไม่มีเลย แนะนำให้มีความคุ้นเคยกับสภาพแวดล้อมเชลล์และเครื่องมืออินเทอร์เฟซบรรทัดคำสั่ง แต่ไม่จำเป็น และแนะนำให้มีความคุ้นเคยกับ Cloud Console และ Cloud Storage ดังนั้นโปรดทำแล็บต่อไปนี้ให้เสร็จก่อนอย่างน้อยที่สุดก่อนที่จะลองทำแล็บนี้:
เมื่อคุณพร้อมแล้ว ให้เลื่อนลงมาและทำตามขั้นตอนด้านล่างเพื่อตั้งค่าสภาพแวดล้อมในห้องปฏิบัติการของคุณ
การตั้งค่าและข้อกำหนด
ก่อนที่คุณจะคลิกปุ่ม เริ่มแล็บ
โปรดอ่านคำแนะนำเหล่านี้ แล็บเหล่านี้มีเวลาจำกัดและคุณไม่สามารถหยุดชั่วคราวได้ ตัวจับเวลาซึ่งจะเริ่มทำงานเมื่อคุณคลิก " เริ่มแล็บ"จะแสดงระยะเวลาที่ทรัพยากรของ Google Cloud พร้อมใช้งานสำหรับคุณ
ห้องปฏิบัติการภาคปฏิบัตินี้ช่วยให้คุณทำกิจกรรมในห้องปฏิบัติการในสภาพแวดล้อมคลาวด์จริง ไม่ใช่ในสภาพแวดล้อมจำลองหรือสาธิต โดยจะให้ข้อมูลประจำตัวชั่วคราวใหม่แก่คุณ ซึ่งคุณจะใช้ในการลงชื่อเข้าใช้และเข้าถึง Google Cloud ตลอดระยะเวลาของห้องปฏิบัติการ
ในการทำแล็บนี้ให้สำเร็จ คุณต้องเตรียมสิ่งต่อไปนี้:
- สามารถเข้าถึงเว็บเบราว์เซอร์มาตรฐาน (แนะนำให้ใช้เบราว์เซอร์ Chrome)
หมายเหตุ:โปรดใช้โหมดไม่ระบุตัวตน (แนะนำ) หรือโหมดส่วนตัวในเบราว์เซอร์เพื่อทำแล็บนี้ เพื่อป้องกันความขัดแย้งระหว่างบัญชีส่วนตัวและบัญชีนักศึกษา ซึ่งอาจทำให้เกิดค่าใช้จ่ายเพิ่มเติมในบัญชีส่วนตัวของคุณ
- ได้เวลาทำแล็บให้เสร็จแล้ว—จำไว้ว่า เมื่อเริ่มแล้วจะไม่สามารถหยุดชั่วคราวได้
หมายเหตุ:โปรดใช้บัญชีนักเรียนสำหรับห้องปฏิบัติการนี้เท่านั้น หากคุณใช้บัญชี Google Cloud อื่น อาจมีค่าใช้จ่ายเกิดขึ้นในบัญชีนั้น
วิธีเริ่มต้นใช้งานแล็บและลงชื่อเข้าใช้คอนโซล Google Cloud
คลิก ปุ่ม เริ่มแล็บ (Start Lab ) หากคุณต้องชำระค่าบริการแล็บ หน้าต่างโต้ตอบจะเปิดขึ้นเพื่อให้คุณเลือกวิธีการชำระเงิน ทางด้านซ้ายคือส่วน รายละเอียดแล็บ (Lab Details) ซึ่งประกอบด้วยข้อมูลดังต่อไปนี้:
ปุ่มเปิดคอนโซล Google Cloud
เวลาที่เหลือ
ข้อมูลประจำตัวชั่วคราวที่คุณต้องใช้สำหรับห้องปฏิบัติการนี้
ข้อมูลเพิ่มเติมอื่นๆ หากจำเป็น เพื่อประกอบการดำเนินการในห้องปฏิบัติการนี้
คลิกเปิด Google Cloud Console (หรือคลิกขวาแล้วเลือกเปิดลิงก์ในโหมดไม่ระบุตัวตนหากคุณใช้เบราว์เซอร์ Chrome)
โปรแกรมจะเริ่มใช้งานทรัพยากรต่างๆ จากนั้นจะเปิดแท็บใหม่ที่แสดงหน้าเข้าสู่ระบบ
คำแนะนำ:จัดเรียงแท็บไว้ในหน้าต่างแยกกัน โดยวางเคียงข้างกัน
หมายเหตุ:หากคุณเห็น หน้าต่าง " เลือกบัญชี"ให้คลิก " ใช้บัญชีอื่น "
หากจำเป็น ให้คัดลอกชื่อผู้ใช้ด้านล่างแล้ววางลงในช่องเข้าสู่ระบบ
"ชื่อผู้ใช้"คัดลอกแล้ว!
คุณสามารถค้นหาชื่อผู้ใช้ได้ในส่วนรายละเอียดห้องปฏิบัติการเช่นกัน
คลิกถัดไป
คัดลอกรหัสผ่านด้านล่างแล้ววางลงในช่องต้อนรับ
"รหัสผ่าน"คัดลอกแล้ว!
คุณสามารถค้นหารหัสผ่านได้ในส่วนรายละเอียดห้องปฏิบัติการเช่นกัน
คลิกถัดไป
สำคัญ:คุณต้องใช้ข้อมูลประจำตัวที่ห้องปฏิบัติการจัดให้เท่านั้น ห้ามใช้ข้อมูลประจำตัวบัญชี Google Cloud ของคุณ
หมายเหตุ:การใช้บัญชี Google Cloud ของคุณเองสำหรับห้องปฏิบัติการนี้อาจมีค่าใช้จ่ายเพิ่มเติม
คลิกเพื่อดูหน้าถัดไป:
ยอมรับข้อกำหนดและเงื่อนไข
อย่าเพิ่มตัวเลือกการกู้คืนหรือการยืนยันตัวตนสองขั้นตอน (เนื่องจากนี่เป็นบัญชีชั่วคราว)
อย่าสมัครทดลองใช้งานฟรี
หลังจากนั้นสักครู่ คอนโซล Google Cloud จะเปิดขึ้นในแท็บนี้
หมายเหตุ:ในการเข้าถึงผลิตภัณฑ์และบริการของ Google Cloud ให้คลิกเมนูนำทางหรือพิมพ์ชื่อบริการหรือผลิตภัณฑ์ในช่อง ค้นหา
เปิดใช้งานคลาวด์เชลล์
Cloud Shell คือเครื่องเสมือนที่ติดตั้งเครื่องมือสำหรับการพัฒนาไว้มากมาย มีพื้นที่เก็บข้อมูลส่วนตัวถาวรขนาด 5GB และทำงานบน Google Cloud Cloud Shell ยังให้สิทธิ์การเข้าถึงทรัพยากร Google Cloud ของคุณผ่านทางบรรทัดคำสั่งอีกด้วย
คลิกเปิดใช้งานคลาวด์เชลล์ ที่ด้านบนสุดของคอนโซล Google Cloud
คลิกผ่านหน้าต่างต่อไปนี้:
ดำเนินการต่อในหน้าต่างข้อมูล Cloud Shell
อนุญาตให้ Cloud Shell ใช้ข้อมูลประจำตัวของคุณเพื่อเรียกใช้ Google Cloud API
เมื่อคุณเชื่อมต่อแล้ว คุณจะได้รับการตรวจสอบสิทธิ์เรียบร้อยแล้ว และโปรเจ็กต์จะถูกตั้งค่าเป็นProject_ID ของ คุณรหัสโครงการผลลัพธ์จะมีบรรทัดหนึ่งที่ระบุProject_IDสำหรับเซสชันนี้:
โปรเจ็กต์ Cloud Platform ของคุณในเซสชัน นี้ถูก ตั้งค่า เป็น "PROJECT_ID"
gcloudเป็นเครื่องมือบรรทัดคำสั่งสำหรับ Google Cloud โดยจะติดตั้งมาให้แล้วใน Cloud Shell และรองรับการเติมข้อความอัตโนมัติด้วยปุ่ม Tab
- (ไม่บังคับ) คุณสามารถดูรายชื่อบัญชีที่ใช้งานอยู่ได้โดยใช้คำสั่งนี้:
รายการการตรวจสอบสิทธิ์ gcloud
คัดลอกแล้ว!
- คลิก"อนุญาต "
ผลลัพธ์:
คล่องแคล่ว: *
บัญชี: "บัญชี"
ใน การตั้งค่าบัญชีที่ใช้งานอยู่ ให้เรียกใช้คำสั่ง:
$ gcloud config set account `ACCOUNT`
- (ไม่บังคับ) คุณสามารถแสดงรายการรหัสโครงการได้โดยใช้คำสั่งนี้:
gcloud config list project
คัดลอกแล้ว!
ผลลัพธ์:
[core]
โปรเจกต์ = "PROJECT_ID"
หมายเหตุ:สำหรับเอกสารฉบับเต็มเกี่ยวกับgcloudgcloud ใน Google Cloud โปรดดูคู่มือภาพรวม cLI ของ gcloud
กำหนดภูมิภาคสำหรับโครงการของคุณ
เรียกใช้คำสั่งต่อไปนี้เพื่อตั้งค่าภูมิภาคสำหรับโปรเจ็กต์ของคุณ:
gcloud config set compute/region Region
คัดลอกแล้ว!
API ทำงานอย่างไร?
สถาปัตยกรรม API
API (Application Programming Interfaces) คือชุดของวิธีการที่ช่วยให้โปรแกรมต่างๆ สามารถสื่อสารกันได้ เพื่อให้การสื่อสารมีประสิทธิภาพ โปรแกรมต้องปฏิบัติตามโปรโตคอลที่ชัดเจนซึ่งควบคุมการถ่ายโอนและการตีความข้อมูล อินเทอร์เน็ตเป็นช่องทางการสื่อสารมาตรฐานที่ API ใช้ในการส่งคำขอและคำตอบระหว่างโปรแกรม API บนเว็บใช้โมเดลไคลเอ็นต์-เซิร์ฟเวอร์เป็นสถาปัตยกรรมพื้นฐานสำหรับการแลกเปลี่ยนข้อมูล ไคลเอ็นต์คืออุปกรณ์คอมพิวเตอร์ที่ร้องขอทรัพยากรคอมพิวเตอร์หรือข้อมูลบางอย่าง และเซิร์ฟเวอร์มีข้อมูลและ/หรือทรัพยากรคอมพิวเตอร์จัดเก็บอยู่ ซึ่งจะตีความและตอบสนองคำขอของไคลเอ็นต์
โปรโตคอลและวิธีการ HTTP
เนื่องจาก API ใช้เว็บเป็นช่องทางการสื่อสาร API จำนวนมากจึงปฏิบัติตามโปรโตคอล HTTP ซึ่งกำหนดกฎและวิธีการสำหรับการแลกเปลี่ยนข้อมูลระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ผ่านทางอินเทอร์เน็ต API ที่ใช้โปรโตคอล HTTP จะใช้วิธีการร้องขอ HTTP (หรือที่เรียกว่า "คำกริยา HTTP") สำหรับการส่งคำขอไคลเอ็นต์ไปยังเซิร์ฟเวอร์ วิธีการร้องขอ HTTP ที่ใช้กันทั่วไปมากที่สุดคือ GET, POST, PUT และ DELETE GET ใช้โดยไคลเอ็นต์เพื่อดึงข้อมูลจากเซิร์ฟเวอร์ PUT ใช้เพื่อแทนที่ข้อมูลที่มีอยู่หรือสร้างข้อมูลหากไม่มีอยู่ POST ใช้เป็นหลักในการสร้างทรัพยากรใหม่ และ DELETE ใช้เพื่อลบข้อมูลหรือทรัพยากรที่ไคลเอ็นต์ระบุบนเซิร์ฟเวอร์
จุดสิ้นสุด
API ใช้เมธอด HTTP ในการโต้ตอบกับข้อมูลหรือบริการประมวลผลที่โฮสต์อยู่บนเซิร์ฟเวอร์ เมธอดเหล่านี้จะไร้ประโยชน์หากไม่มีวิธีเข้าถึงทรัพยากรเฉพาะอย่างสม่ำเสมอ API ใช้ช่องทางการสื่อสารที่เรียกว่าเอนด์พอยต์ เพื่อให้ไคลเอ็นต์สามารถเข้าถึงทรัพยากรที่ต้องการได้โดยไม่ยุ่งยากหรือผิดปกติ เอนด์พอยต์คือจุดเข้าถึงข้อมูลหรือทรัพยากรประมวลผลที่โฮสต์อยู่บนเซิร์ฟเวอร์ และอยู่ในรูปแบบของ HTTP URI เอนด์พอยต์จะถูกเพิ่มเข้าไปใน URL พื้นฐานของ API เพื่อสร้างเส้นทางไปยังทรัพยากรเฉพาะหรือกลุ่มของทรัพยากร นอกจากนี้ ยังสามารถเพิ่มสตริงคำค้นหาลงในเอนด์พอยต์เพื่อส่งตัวแปรที่อาจจำเป็นในการดำเนินการตามคำขอของ API ให้เสร็จสมบูรณ์
REST และ RESTful API
API ที่ใช้โปรโตคอล HTTP วิธีการร้องขอ และเอนด์พอยต์ เรียกว่า RESTful API RESTful API ทำงานบนเซิร์ฟเวอร์ ทำหน้าที่เป็นผู้ดำเนินการตามคำขอของไคลเอ็นต์ โมเดลนี้กำหนดกรอบของเอนด์พอยต์ (คำนาม) ที่วิธีการ HTTP (คำกริยา) ทำงาน และ API ใช้กรอบนี้เพื่อตอบสนองคำขอ โดยสรุปแล้ว RESTful API ใช้โมเดลไคลเอ็นต์-เซิร์ฟเวอร์ ปฏิบัติตามโปรโตคอล HTTP ใช้วิธีการร้องขอ HTTP และใช้เอนด์พอยต์เพื่อเข้าถึงทรัพยากรเฉพาะ
ทดสอบความเข้าใจของคุณ
ตอบคำถามแบบเลือกตอบต่อไปนี้ เพื่อเสริมสร้างความเข้าใจในแนวคิดที่ได้เรียนรู้มาแล้ว
อุปกรณ์ประมวลผล (เช่น สมาร์ทโฟน แล็ปท็อป ฯลฯ) ที่ร้องขอทรัพยากรการประมวลผลหรือข้อมูลบางอย่างAPI บนเว็บโมเดลไคลเอ็นต์-เซิร์ฟเวอร์เซิร์ฟเวอร์ลูกค้า
วิธีการ HTTP ที่ใช้กันทั่วไปในการสร้างทรัพยากรใหม่ลบรับใส่โพสต์
งานที่ 1. การใช้งานไลบรารี API
ในส่วนนี้ คุณจะได้สำรวจไลบรารี API และเปิดใช้งาน API ไลบรารี API เป็นแหล่งรวม API ของ Google ทั้งหมด คุณสามารถใช้ไลบรารี API เพื่อเปิดใช้งาน ปิดใช้งาน และจัดการ API ในโครงการต่างๆ ของคุณได้
- เปิดเมนูนำทางแล้วเลือกAPIs & Services > Library
ไลบรารีAPIให้การเข้าถึงที่รวดเร็ว เอกสารประกอบ และตัวเลือกการกำหนดค่าสำหรับ Google API มากกว่า 200 รายการ แม้ว่าจะอยู่ในคอนโซล แต่สิ่งสำคัญที่ควรทราบคือไลบรารีนี้ให้การเข้าถึงGoogle API ทั้งหมดไม่ใช่เฉพาะ API ที่เกี่ยวข้องกับ Google Cloud เท่านั้น ซึ่งเน้นย้ำถึงประเด็นสำคัญ: API เป็นพื้นฐานของบริการ Google ทั้งหมด และ Cloud API ไม่ได้อยู่ภายใต้หมวดหมู่ Google Cloud ทั้งหมด
ได้เวลาลงมือปฏิบัติจริงในการเปิดใช้งาน API ในไลบรารี API แล้ว สมมติว่าคุณเป็นนักพัฒนาแอปพลิเคชันบนมือถือสำหรับเว็บไซต์ฟิตเนส และต้องการใช้Google Fitness APIเพื่อสร้างแอปพลิเคชันของคุณ
พิมพ์
Fitness APIและกดENTERลงในช่องค้นหา API และบริการคลิกFitness APIจากรายการผลลัพธ์ จากนั้นคลิกเปิดใช้งาน
หน้าAPI สำหรับการออกกำลังกาย จะเปิดขึ้น และ สถานะ API จะแสดงว่าเปิดใช้งานอยู่
ไลบรารี API มีลิงก์ไปยังบทช่วยสอนและเอกสารประกอบ ข้อกำหนดในการให้บริการ และวิธีการใช้งานแบบโต้ตอบที่มีอยู่ใน API Explorer หากต้องการดูข้อมูลเมตริกและการใช้งาน ให้ใช้ แดชบอร์ด APIs & Servicesในหน้านี้ คุณสามารถดูและขอโควต้า ควบคุมการเข้าถึงทรัพยากรและข้อมูล และดูเมตริกได้
หากต้องการดูตัวอย่างการใช้งานฟีเจอร์เหล่านี้ ให้เลือกแท็บโควต้าและข้อจำกัดของระบบ
นี่แสดงให้เห็นว่า API นี้อนุญาตให้เรียกใช้ข้อมูลได้กี่ครั้งต่อวันและต่อนาที
ตอนนี้คุณได้สร้าง API ที่ไม่ใช่ระบบคลาวด์เรียบร้อยแล้ว ในส่วนถัดไป คุณจะได้เรียนรู้เกี่ยวกับสถาปัตยกรรมและการทำงานพื้นฐานของ API จากนั้นคุณจะได้ฝึกฝนการใช้งาน Cloud Storage API
ทดสอบความเข้าใจของคุณ
ตอบคำถามแบบเลือกตอบต่อไปนี้ เพื่อเสริมสร้างความเข้าใจในแนวคิดที่ได้เรียนรู้มาแล้ว
นำเสนอการเข้าถึงอย่างรวดเร็ว เอกสารประกอบ และตัวเลือกการกำหนดค่าสำหรับ Google API มากกว่า 200 รายการโครงการ Google Cloudไลบรารี APIไดอะล็อกโฟลว์API และบริการ
อธิบายรายละเอียดการใช้งาน API เฉพาะของโครงการของคุณ รวมถึงระดับการรับส่งข้อมูล อัตราข้อผิดพลาด และแม้กระทั่งเวลาแฝงAPI และบริการไดอะล็อกโฟลว์ไลบรารี APIโครงการ Google Cloud
งานที่ 2 การสร้างไฟล์ JSON ในคอนโซลบนคลาวด์
เพื่อนำความรู้ที่ได้ไปประยุกต์ใช้ ให้ เรียกใช้ API REST/JSON ของ Cloud Storageใน Cloud Shell เพื่อสร้างบัคเก็ตและอัปโหลดเนื้อหา
ในแท็บใหม่ ให้เปิดGoogle Cloud Storage JSON APIเพื่อตรวจสอบให้แน่ใจว่าได้เปิดใช้งาน Cloud Storage API แล้ว สังเกตว่า API เปิดใช้งานอยู่
ใน Cloud Shell ให้รันคำสั่งต่อไปนี้เพื่อสร้างและแก้ไขไฟล์ชื่อ...
values.json:
ค่านาโน.json
คัดลอกแล้ว!
- ใน
nanoโปรแกรมแก้ไขข้อความ ให้คัดลอกและวางข้อความต่อไปนี้ เนื่องจากบัคเก็ตต้องมีชื่อบัคเก็ตที่ไม่ซ้ำกัน จึง ใช้รหัสโครงการ (Project ID) ในชื่อบัคเก็ต:
{ "name" : "Project_ID-bucket" ,
"location" : "us" ,
"storageClass" : "multi_regional"
}
คัดลอกแล้ว!
หมายเหตุ:คุณสามารถใช้ Project ID ของคุณเป็นชื่อ Bucket ได้ เนื่องจากเป็นรหัสที่ไม่ซ้ำกันทั่วโลก
- เมื่อทำเสร็จแล้ว ให้ออกจาก
nanoโปรแกรมแก้ไขข้อความโดยกดCTRL+X , Yแล้วกด ENTER ตามลำดับ
คุณเพิ่งสร้างไฟล์ JSON ที่มีอ็อบเจ็กต์ซึ่งมีคู่คีย์-ค่าสามคู่ ได้แก่name, location, และstorageClassซึ่งเป็นค่าเดียวกันกับที่จำเป็นเมื่อคุณสร้างบัคเก็ตด้วยgsutilเครื่องมือบรรทัดคำสั่งหรือในคอนโซล
ก่อนที่จะสร้างบัคเก็ตโดยใช้ Cloud Storage REST/JSON API คุณต้องกำหนดนโยบายการตรวจสอบสิทธิ์และการอนุญาตที่ถูกต้องเสียก่อน
งานที่ 3. ยืนยันตัวตนและอนุญาตการเข้าถึง JSON/REST API ของ Cloud Storage
การตรวจสอบสิทธิ์และการอนุญาต
การตรวจสอบสิทธิ์และการอนุญาตเป็นสองคำที่มักใช้สลับกัน แต่จริงๆ แล้วไม่ใช่สิ่งเดียวกัน
การตรวจสอบสิทธิ์หมายถึง กระบวนการในการระบุตัวตนของลูกค้า
การอนุญาตหมายถึง กระบวนการกำหนดสิทธิ์ที่ลูกค้าที่ได้รับการตรวจสอบสิทธิ์แล้ว สามารถเข้าถึงชุดทรัพยากรต่างๆ ได้
การยืนยันตัวตนจะระบุว่าคุณเป็นใคร และการอนุญาตจะกำหนดว่าคุณสามารถทำอะไรได้บ้าง
Google API ใช้บริการการตรวจสอบสิทธิ์/การอนุญาตสามประเภท ได้แก่ "คีย์ API" "บัญชีบริการ" และ "OAuth" API จะใช้บริการการตรวจสอบสิทธิ์ประเภทใดประเภทหนึ่ง ขึ้นอยู่กับทรัพยากรที่ร้องขอและแหล่งที่มาของการเรียกใช้ API นั้น
คีย์ API
คีย์ APIคือโทเค็นลับที่มักอยู่ในรูปแบบของสตริงที่เข้ารหัส คีย์ API สร้างและใช้งานได้รวดเร็ว บ่อยครั้งที่ API ที่ใช้ข้อมูลหรือเมธอดสาธารณะและต้องการให้ผู้พัฒนาเริ่มต้นใช้งานได้อย่างรวดเร็ว จะใช้คีย์ API เพื่อตรวจสอบสิทธิ์ผู้ใช้ได้อย่างรวดเร็ว
ในบริบทของ Google Cloud นั้น API key ใช้ระบุโปรเจกต์ที่เรียกใช้ API โดยการระบุโปรเจกต์ที่เรียกใช้ API key จะช่วยให้สามารถเชื่อมโยงข้อมูลการใช้งานกับโปรเจกต์นั้นได้ และยังสามารถปฏิเสธการเรียกใช้จากโปรเจกต์ที่ไม่ได้ให้สิทธิ์หรือเปิดใช้งาน API ได้อีกด้วย
โอออธ
โทเค็น OAuthมีรูปแบบคล้ายกับคีย์ API แต่มีความปลอดภัยมากกว่าและสามารถเชื่อมโยงกับบัญชีผู้ใช้หรือข้อมูลประจำตัวได้ โทเค็นเหล่านี้ใช้เป็นหลักเมื่อ API อนุญาตให้นักพัฒนาเข้าถึงข้อมูลผู้ใช้ได้
ในขณะที่คีย์ API ช่วยให้นักพัฒนาสามารถเข้าถึงฟังก์ชันการทำงานทั้งหมดของ API ได้ แต่รหัสไคลเอ็นต์ OAuth นั้นขึ้นอยู่กับขอบเขต กล่าวคือ สิทธิ์ที่แตกต่างกันจะถูกมอบให้กับตัวตนที่แตกต่างกัน
บัญชีบริการ
บัญชีบริการ (Service Account ) เป็นบัญชี Google ประเภทพิเศษที่ใช้สำหรับแอปพลิเคชันหรือเครื่องเสมือน (VM) ของคุณ แทนที่จะเป็นของผู้ใช้ปลายทางแต่ละราย แอปพลิเคชันของคุณจะใช้ข้อมูลประจำตัวของบัญชีบริการเพื่อเรียกใช้ API ของ Google ทำให้ผู้ใช้ไม่ต้องเกี่ยวข้องโดยตรง
คุณสามารถใช้บัญชีบริการได้โดยการระบุรหัสส่วนตัวของบัญชีบริการนั้นให้กับแอปพลิเคชันของคุณ หรือโดยการใช้บัญชีบริการสำเร็จรูปที่มีให้ใช้งานเมื่อทำงานบน Cloud Functions, Google App Engine, Compute Engine หรือ Google Kubernetes Engine
สำหรับห้องปฏิบัติการที่เกี่ยวข้องกับบัญชีบริการและบทบาทโดยเฉพาะ โปรดดูที่: บัญชีบริการและบทบาท:พื้นฐาน
เนื่องจาก Cloud Storage เป็นแพลตฟอร์มที่จัดเก็บและให้สิทธิ์การเข้าถึงข้อมูลของผู้ใช้ คุณจึงจำเป็นต้องสร้างโทเค็น OAuth ก่อนที่จะใช้บริการของแพลตฟอร์มนี้
เปิดOAuth 2.0 playgroundในแท็บใหม่ นี่คือบริการที่ช่วยให้คุณสร้างโทเค็น OAuth ได้อย่างง่ายดาย
เลื่อนลงมาแล้วเลือกCloud Storage API V1
จากนั้นเลือกขอบเขตhttps://www.googleapis.com/auth/devstorage.full_control
คลิกที่กล่องสีฟ้าที่เขียนว่า"อนุญาต API"ซึ่งจะเปิดหน้าเข้าสู่ระบบของ Google ขึ้นมา
เลือกชื่อผู้ใช้ของคุณ จากนั้นคลิกอนุญาตเมื่อระบบขออนุญาต
เมื่อเปิด OAuth 2.0 Playground ขึ้นมา โปรดสังเกตว่าขั้นตอนที่ 2 มีการสร้างรหัสการอนุญาตขึ้นมา
คลิกที่ " แลกเปลี่ยนรหัสอนุญาตสำหรับโทเค็น " หากคุณถูกนำไปยังขั้นตอนที่ 3 ให้คลิกที่แผงขั้นตอนที่ 2
คัดลอกรหัสการเข้าถึงเพื่อใช้ในขั้นตอนต่อไป
งานที่ 4. สร้างบัคเก็ตโดยใช้ Cloud Storage JSON/REST API
- กลับไปยังเซสชัน Cloud Shell ของคุณ ที่พรอมต์ CLI ให้พิมพ์คำสั่ง
lsและกด Enter คุณควรจะเห็นvalues.jsonไฟล์ที่คุณสร้างไว้ก่อนหน้านี้และREADME-cloudshell.txtไฟล์อีกไฟล์หนึ่ง:
ผลลัพธ์:
README-cloudshell.txt values .json
- เรียกใช้คำสั่งต่อไปนี้เพื่อตั้งค่าโทเค็น OAuth2 ของคุณเป็นตัวแปรสภาพแวดล้อม โดยแทนที่
<YOUR_TOKEN>ด้วยโทเค็นการเข้าถึงที่คุณสร้างขึ้น:
ส่งออก OAUTH2_TOKEN=<โทเค็นของคุณ>
คัดลอกแล้ว!
- เรียกใช้คำสั่งต่อไปนี้เพื่อตั้งค่า Project ID ของคุณเป็นตัวแปรสภาพแวดล้อม:
export PROJECT_ID=$(gcloud config get-value project)
คัดลอกแล้ว!
- ตอนนี้ให้รันคำสั่งต่อไปนี้เพื่อสร้างบัคเก็ตใน Cloud Storage:
curl -X POST --data-binary @values.json \
-H "การอนุญาต: ผู้ถือโทเค็น $OAUTH2_TOKEN" \
-H "Content-Type: application/json" \
"https://www.googleapis.com/storage/v1/b?project=$PROJECT_ID"
คัดลอกแล้ว!
- คุณควรได้รับผลลัพธ์ที่คล้ายคลึงกัน:
{
"kind" : "storage#bucket" ,
"selfLink" : "https://www.googleapis.com/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7" ,
"id" : "qwiklabs-gcp-02-5d551758b5a7" ,
"name" : "qwiklabs-gcp-02-5d551758b5a7" ,
"projectNumber" : "670840659006" ,
"metageneration" : "1" ,
"location" : "US" ,
"storageClass" : "MULTI_REGIONAL" ,
"etag" : "CAE=" ,
"timeCreated" : "2020-11-11T06:41:40.901Z" ,
"อัปเดต" : "2020-11-11T06:41:40.901Z" ,
"iamConfiguration" : {
"bucketPolicyOnly" : {
"enabled" : false
},
"uniformBucketLevelAccess" : {
"enabled" : false
}
},
"locationType" : "multi-region"
}
หมายเหตุ:หากคุณได้รับข้อความแสดงข้อผิดพลาด เช่น "การใช้ชื่อบัคเก็ตนี้ถูกจำกัด" หรือ "ขออภัย ชื่อนั้นไม่พร้อมใช้งาน" หมายความว่ามีข้อขัดแย้งกับหลักเกณฑ์การตั้งชื่อบัคเก็ตสากลโปรดแก้ไขvalues.jsonไฟล์และเปลี่ยนชื่อบัคเก็ต
คำขอครั้งนี้เป็นผลรวมของทุกสิ่งที่คุณได้เรียนรู้มาจนถึงตอนนี้ คุณใช้ เครื่องมือ curl CLI เพื่อสร้างคำขอ HTTP POST คุณส่งvalues.jsonไฟล์เข้าไปในส่วนเนื้อหาของคำขอ คุณส่งโทเค็น OAuth และข้อมูลจำเพาะ JSON เป็นส่วนหัวของคำขอ คำขอนี้ถูกส่งไปยังปลายทาง Cloud Storage ซึ่งมีพารามิเตอร์สตริงคำค้นหาที่ตั้งค่าเป็นรหัสโครงการของคุณ
ดูรายละเอียดพื้นที่จัดเก็บข้อมูลบนคลาวด์ที่คุณสร้างขึ้นใหม่
- หากต้องการดูบัคเก็ตที่สร้างใหม่ของคุณให้เลือกCloud Storage > Bucketsจากเมนูนำทาง
ทดสอบงานเสร็จสมบูรณ์
คลิก " ตรวจสอบความคืบหน้าของฉัน"เพื่อยืนยันงานที่คุณทำเสร็จแล้ว คะแนนการประเมินจะอัปเดตหากคุณสร้างบัคเก็ตสำเร็จด้วย Cloud Storage JSON/REST API
สร้างบัคเก็ตโดยใช้ Cloud Storage JSON/REST API
งานที่ 5. อัปโหลดไฟล์โดยใช้ API JSON/REST ของ Cloud Storage
คุณสามารถใช้ Cloud Storage JSON/REST API เพื่ออัปโหลดไฟล์ไปยังบัคเก็ตได้
- บันทึกภาพต่อไปนี้ลงในคอมพิวเตอร์ของคุณและตั้งชื่อว่าdemo-image.png :
ในเซสชัน Cloud Shell ของคุณ ให้คลิกที่ไอคอนเมนูสามจุดที่มุมบนขวา คลิกอัปโหลด > เลือกไฟล์เลือกและอัปโหลด
demo-image.pngไฟล์ การดำเนินการนี้จะเพิ่มรูปภาพลงในไดเร็กทอรีของคุณเรียกใช้คำสั่งต่อไปนี้เพื่อดูเส้นทางไปยังไฟล์รูปภาพ:
realpath demo-image.png
คัดลอกแล้ว!
คุณควรได้รับผลลัพธ์ที่คล้ายคลึงกัน:
/home/gcpstaging25084_student/demo-image.png
- ตั้งค่าเส้นทางไฟล์เป็นตัวแปรสภาพแวดล้อมโดยเรียกใช้คำสั่งต่อไปนี้ โดยแทนที่
<DEMO_IMAGE_PATH>ด้วยผลลัพธ์จากคำสั่งก่อนหน้า:
ส่งออก OBJECT=<DEMO_IMAGE_PATH>
คัดลอกแล้ว!
- ตั้งชื่อบัคเก็ตของคุณเป็นตัวแปรสภาพแวดล้อมโดยเรียกใช้คำสั่งต่อไปนี้:
export BUCKET_NAME =Project_ID-bucket
คัดลอกแล้ว!
- ตอนนี้ให้รันคำสั่งต่อไปนี้เพื่ออัปโหลดภาพตัวอย่างไปยังที่เก็บข้อมูลบนคลาวด์ของคุณ:
curl -X POST --data-binary @$OBJECT \
-H "การอนุญาต: ผู้ถือโทเค็น $OAUTH2_TOKEN" \
-H "Content-Type: image/png" \
"https://www.googleapis.com/upload/storage/v1/b/$BUCKET_NAME/o?uploadType=media&name=demo-image"
คัดลอกแล้ว!
คุณควรได้รับผลลัพธ์ที่คล้ายคลึงกัน:
{
"kind" : "storage#object" ,
"id" : "qwiklabs-gcp-02-5d551758b5a7/demo-image/1605077118178936" ,
"selfLink" : "https://www.googleapis.com/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7/o/demo-image" ,
"mediaLink" : "https://www.googleapis.com/download/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7/o/demo-image?generation=1605077118178936&alt=media" ,
"name" : "demo-image" ,
"bucket" : "qwiklabs-gcp-02-5d551758b5a7" ,
"generation" : "1605077118178936" ,
"metageneration" : "1" ,
"contentType" : "image/png" ,
"storageClass" : "MULTI_REGIONAL" ,
"size" : "401951" ,
"md5Hash" : "LbpHpwhnApQKQx9IEXjTsQ==" ,
"crc32c" : "j5oPrg==" ,
"etag" : "CPis3Zvy+ewCEAE=" ,
"timeCreated" : "2020-11-11T06:45:18.178Z" ,
"updated" : "2020-11-11T06:45:18.178Z" ,
"timeStorageClassUpdated" : "2020-11-11T06:45:18.178Z"
}
หากต้องการดูภาพที่เพิ่มลงในบัคเก็ตของคุณ ให้เปิดเมนูนำทางแล้วเลือกพื้นที่จัดเก็บข้อมูลบนคลาวด์ > บัคเก็ต
คลิกที่ชื่อบัคเก็ตของคุณเพื่อดูว่า
demo-imageมีการเพิ่มบัคเก็ตนั้นแล้วหรือไม่:
- คลิกที่ชื่อรูปภาพเพื่อเปิดหน้าแสดงรายละเอียดของวัตถุ
ทดสอบงานเสร็จสมบูรณ์
คลิก " ตรวจสอบความคืบหน้าของฉัน"เพื่อยืนยันงานที่คุณทำเสร็จแล้ว คะแนนการประเมินจะอัปเดตก็ต่อเมื่อคุณอัปโหลดไฟล์สำเร็จโดยใช้ Cloud Storage JSON/REST API
อัปโหลดไฟล์โดยใช้ Cloud Storage JSON/REST API
ยินดีด้วย!
ในห้องปฏิบัติการนี้ คุณได้พัฒนาความเข้าใจอย่างลึกซึ้งเกี่ยวกับ API และได้รับประสบการณ์ฝึกฝนการใช้งาน Cloud Storage JSON/REST API คุณได้เรียนรู้เกี่ยวกับ Cloud API, สถาปัตยกรรม API, โปรโตคอลและวิธีการ HTTP, เอนด์พอยต์, RESTful API, JSON และแนวทางการตรวจสอบสิทธิ์ API ตอนนี้คุณพร้อมที่จะเรียนห้องปฏิบัติการ API เพิ่มเติมใน Qwiklabs แล้ว
ขั้นตอนต่อไป / เรียนรู้เพิ่มเติม
อย่าลืมลองทำแบบฝึกหัดเพิ่มเติมเกี่ยวกับการใช้งาน API ในห้องปฏิบัติการต่อไปนี้:
การฝึกอบรมและการรับรองจาก Google Cloud
...ช่วยให้คุณใช้ประโยชน์จากเทคโนโลยี Google Cloud ได้อย่างเต็มที่หลักสูตรของเราประกอบด้วยทักษะทางเทคนิคและแนวปฏิบัติที่ดีที่สุด เพื่อช่วยให้คุณเรียนรู้ได้อย่างรวดเร็วและพัฒนาความรู้ได้อย่างต่อเนื่อง เรามีหลักสูตรฝึกอบรมตั้งแต่ระดับพื้นฐานจนถึงระดับสูง พร้อมตัวเลือกแบบเรียนตามความต้องการ เรียนสด และเรียนออนไลน์ เพื่อให้เหมาะกับตารางเวลาที่ยุ่งของคุณใบรับรองจะช่วยให้คุณตรวจสอบและพิสูจน์ทักษะและความเชี่ยวชาญของคุณในเทคโนโลยี Google Cloud
คู่มือฉบับปรับปรุงล่าสุด 26 กุมภาพันธ์ 2567
ห้องปฏิบัติการทำการทดสอบครั้งล่าสุดเมื่อวันที่ 26 กุมภาพันธ์ 2567
ลิขสิทธิ์ 2026 Google LLC สงวนลิขสิทธิ์ทุกประการ Google และโลโก้ Google เป็นเครื่องหมายการค้าของ Google LLC ชื่อบริษัทและชื่อผลิตภัณฑ์อื่นๆ อาจเป็นเครื่องหมายการค้าของบริษัทที่เกี่ยวข้อง


