โปรแกรมสำรวจ Google APIs จะสร้างตัวอย่างโค้ดแบบไดนามิก ตัวอย่างโค้ดเหล่านี้ออกแบบมาเพื่อให้คัดลอกและเรียกใช้ในเครื่องได้ หากต้องการดูตัวอย่าง ให้คลิก เต็มหน้าจอ ในแผงด้านข้างของโปรแกรมสำรวจ APIs รูปภาพด้านล่างแสดงโปรแกรมสำรวจ APIs แบบเต็มหน้าจอแบบขยาย
โดยค่าเริ่มต้น โปรแกรมสำรวจ APIs จะแสดงวิธีใช้ cURL เพื่อเรียกใช้คำขอ นอกจากนี้ API บางรายการอาจแสดงตัวอย่างสำหรับภาษาอื่นๆ เช่น JavaScript, Java และ Python
เรียกใช้ตัวอย่างโค้ดในเครื่อง
แท็บต่อไปนี้จะอธิบายข้อกำหนดเบื้องต้นและขั้นตอนในการเรียกใช้ตัวอย่างโค้ด หากต้องการเรียกใช้ตัวอย่างโค้ด คุณต้องสร้างและใช้ข้อมูลเข้าสู่ระบบการให้สิทธิ์ของคุณเอง โปรดดูเอกสารประกอบของ Google API ที่เฉพาะเจาะจงเพื่อดูคำอธิบายเกี่ยวกับวิธีสร้างโปรเจ็กต์และสร้างข้อมูลเข้าสู่ระบบ
ข้อมูลเข้าสู่ระบบจะเป็นอย่างใดอย่างหนึ่งต่อไปนี้ โดยขึ้นอยู่กับประเภทข้อมูล (สาธารณะหรือส่วนตัว) ที่เมธอดเข้าถึง
- สำหรับข้อมูลสาธารณะ ข้อมูลเข้าสู่ระบบคือคีย์ API
สำหรับข้อมูลส่วนตัว ข้อมูลเข้าสู่ระบบจะเป็นไฟล์
client_secret.jsonที่มีรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ OAuth 2.0 หรือโทเค็นเพื่อการเข้าถึง OAuth 2.0
cURL
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API ใน Cloud Console
- สร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth สำหรับเว็บแอปพลิเคชันใน Cloud Console และใช้
https://developers.google.com/oauthplaygroundเป็น URI การเปลี่ยนเส้นทาง - ใน OAuth 2.0 Playground, คลิก การกำหนดค่า OAuth 2.0 .
- เลือกใช้ข้อมูลเข้าสู่ระบบของคุณเอง
- ป้อนรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ที่สร้างในขั้นตอนที่ 3
- ในช่องขอบเขต ให้พิมพ์ขอบเขตที่จะใช้กับเมธอด แล้วคลิกให้สิทธิ์ APIs
- (ไม่บังคับ) หากเห็นหน้าจอลงชื่อเข้าใช้ ให้เลือกบัญชีที่จะใช้
- (ไม่บังคับ) หากเห็นหน้าจอการให้สิทธิ์ ให้คลิกยอมรับ
- คลิกเปลี่ยนรหัสการให้สิทธิ์ของโทเค็น ระบบจะแสดงโทเค็น
- ในตัวอย่างโค้ด cURL ให้แทนที่
[YOUR_API_KEY]ด้วยคีย์ API ที่สร้าง ในขั้นตอนที่ 2:'https://www.googleapis.com/drive/v3/files?key=[YOUR_API_KEY]' \ - ในตัวอย่างโค้ด cURL ให้แทนที่
[YOUR_ACCESS_TOKEN]ด้วยโทเค็นเพื่อการเข้าถึงที่สร้างในขั้นตอนที่ 10:--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
เรียกใช้ตัวอย่างโค้ด
เรียกใช้คำสั่ง cURL จากบรรทัดคำสั่ง คำสั่งควรมีลักษณะคล้ายกับคำสั่งต่อไปนี้
curl \
'https://www.googleapis.com/drive/v3/files?key=AIzaSyBiKcaoXmVApwnT24hitQG_dwjGvAj6Ddw' \
--header 'Authorization: Bearer ya29.a0ARrdaM_yQn9MWBpJgKPx880BSnRYIizRYIDz0JN9e66nSliIYpqNXmPsvv2ccfplCTG_U4b1' \
--header 'Accept: application/json' \
--compressed
JavaScript
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API ใน Cloud Console
- ใน Cloud Console ให้สร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth สำหรับ "เว็บแอปพลิเคชัน" และตั้งค่าต้นทาง JavaScript ที่ได้รับอนุญาตเพื่อระบุ URL ที่คุณจะส่งคำขอ เช่น
http://localhost - คัดลอกตัวอย่างโค้ดแบบเต็มไปยังไฟล์ในเครื่องที่เว็บเซิร์ฟเวอร์เข้าถึงได้ เช่น
/var/www/html/example.html ค้นหาบรรทัดในตัวอย่างโค้ดที่ตั้งค่าคีย์ API หรือรหัสไคลเอ็นต์ แล้วแทนที่ค่าด้วยค่าที่สร้างในขั้นตอนที่ 2 และ 3
- คีย์ API:
gapi.client.setApiKey(YOUR_API_KEY); - รหัสไคลเอ็นต์ OAuth 2.0:
gapi.client.init({ 'clientId': 'YOUR_CLIENT_ID',
- คีย์ API:
เรียกใช้ตัวอย่างโค้ด
- เปิดไฟล์ในเบราว์เซอร์ เช่น
http://localhost/example.htmlเราขอแนะนำให้ใช้เบราว์เซอร์ที่มีคอนโซลการแก้ไขข้อบกพร่อง เช่น Google Chrome - (ไม่บังคับ) หากเห็นหน้าจอลงชื่อเข้าใช้ ให้เลือกบัญชีที่จะใช้
- (ไม่บังคับ) หากเห็นหน้าจอการให้สิทธิ์ ให้คลิกยอมรับ คอนโซลการแก้ไขข้อบกพร่องควรแสดงการตอบกลับของเมธอดเป็นออบเจ็กต์ JSON
Java
ข้อกำหนดเบื้องต้น
- Java 1.7 ขึ้นไป
- Gradle 7 ขึ้นไป
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เมธอดเข้าถึง
- ตั้งค่าประเภทแอปพลิเคชันเป็นแอปสำหรับเดสก์ท็อป
- หากสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลเข้าสู่ระบบ OAuth 2.0 ไฟล์นี้จะมีชื่อคล้ายกับ
client_secret_CLIENTID.jsonโดยที่CLIENTIDคือรหัสไคลเอ็นต์ของโปรเจ็กต์ ในไดเรกทอรีที่ทำงานอยู่ ให้เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างโครงสร้างโปรเจ็กต์ใหม่
$ gradle init --type basic $ mkdir -p src/main/java src/main/resourcesหากสร้างรหัสไคลเอ็นต์ OAuth 2.0 ในขั้นตอนที่ 2 ให้เปลี่ยนชื่อไฟล์ JSON ที่ดาวน์โหลดเป็น
client_secret.jsonบันทึกไฟล์ที่เปลี่ยนชื่อแล้วในไดเรกทอรี
src/main/resourcesที่สร้างในขั้นตอนที่ 5เปิดไฟล์
build.gradleในไดเรกทอรีที่ทำงานอยู่ แล้วแทนที่เนื้อหาด้วยเนื้อหาต่อไปนี้apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' API_SPECIFIC_DEPENDENCY }ในไฟล์
build.gradleให้แทนที่บรรทัดที่ระบุว่าAPI_SPECIFIC_DEPENDENCYด้วยคำสั่งเพื่อคอมไพล์โค้ดสำหรับ API ที่คุณกำลังเรียก ตัวอย่างสำหรับ YouTube Analytics API มีดังนี้compile 'com.google.apis:google-api-services-youtubeAnalytics:v2-rev16-1.23.0'คำสั่งจะเป็นไปตามเทมเพลตต่อไปนี้
compile 'com.google.apis:google-api-services-API_NAME:API_VERSION- revREVISION-CL_VERSION'
โดยที่
API_NAMEคือชื่อ API ที่แสดงใน GitHub สำหรับ API หากต้องการค้นหา ชื่อ ให้คลิกลิงก์เวอร์ชันข้าง API ในหน้า Google APIs ที่รองรับ ลิงก์เวอร์ชันจะนำทางไปยัง GitHub ชื่อ API จะอยู่ตรงกลางด้านบนของหน้าและขึ้นต้นด้วยgoogleapis/google-apis-services-เช่น สำหรับ Drive API เวอร์ชัน v3API_NAMEคือdriveAPI_VERSIONคือเวอร์ชัน API ที่แสดงสำหรับ API ใต้ชื่อ API ในหน้า Google APIs ที่รองรับREVISIONคือหมายเลขการแก้ไขที่แสดงในข้อมูลอ้างอิง JavaDoc สำหรับ API ข้อมูลอ้างอิง JavaDoc จะอยู่ที่https://googleapis.dev/java/google-api-services-API_NAME/latest/index.htmlCL_VERSIONคือเวอร์ชันไลบรารีของไคลเอ็นต์ ค่านี้จะปรากฏในข้อมูลอ้างอิง JavaDoc ด้วย- จากไดเรกทอรีที่ทำงานอยู่ ให้คัดลอกตัวอย่างโค้ดจากโปรแกรมสำรวจ APIs ไปยัง
src/main/java/ApiExample.java(ชื่อคลาสในแต่ละตัวอย่างคือApiExampleเพื่อให้คุณไม่ต้องแก้ไขไฟล์build.gradleเพื่อเรียกใช้ตัวอย่างต่างๆ
เรียกใช้ตัวอย่างโค้ด
ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง
gradle -q run
ตัวอย่างควรเรียกใช้คำขอ API และพิมพ์การตอบกลับไปยัง STDOUT
นอกจากนี้ คุณยังตรวจสอบบริการที่กำลังเรียกเพื่อดูผลลัพธ์ของคำขอที่เขียนข้อมูลได้ด้วย
Node.js
ข้อกำหนดเบื้องต้น
- Node.js
ไลบรารีของไคลเอ็นต์ Google APIs สำหรับ Node.js
- หากยังไม่เคยติดตั้งไลบรารีของไคลเอ็นต์ ให้เรียกใช้คำสั่งต่อไปนี้
npm install googleapis --save- หากเคยติดตั้งไลบรารีของไคลเอ็นต์ไว้ก่อนหน้านี้ เราขอแนะนำให้อัปเดตไลบรารีเพื่อให้แน่ใจว่าคุณมีคลาสที่อัปเดตล่าสุดสำหรับไลบรารีที่กำลังทดสอบ หากต้องการอัปเดตไลบรารีของไคลเอ็นต์ ให้เรียกใช้คำสั่งต่อไปนี้
npm update googleapis --save
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เมธอดเข้าถึง
- ตั้งค่าประเภทแอปพลิเคชันเป็นแอปสำหรับเดสก์ท็อป
- หากสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลเข้าสู่ระบบ OAuth 2.0 ไฟล์นี้จะมีชื่อคล้ายกับ
client_secret_CLIENTID.jsonโดยที่CLIENTIDคือรหัสไคลเอ็นต์ของโปรเจ็กต์ - คัดลอกตัวอย่างโค้ดไปยังไฟล์ในเครื่องและแก้ไขตัวอย่างเพื่อระบุคีย์ API หรือไฟล์ข้อมูลลับไคลเอ็นต์อย่างถูกต้อง ในตัวอย่าง ค่าคีย์ API คือ
YOUR_API_KEYและตำแหน่งไฟล์ข้อมูลลับไคลเอ็นต์คือYOUR_CLIENT_SECRET_FILE.json
เรียกใช้ตัวอย่างโค้ด
ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง
node sample.js
ตัวอย่างส่วนใหญ่จะพิมพ์การตอบกลับจาก API (หรืออย่างอื่น) ไปยัง STDOUT
PHP
ข้อกำหนดเบื้องต้น
- PHP 5.4 ขึ้นไปที่มีอินเทอร์เฟซบรรทัดคำสั่ง (CLI) และส่วนขยาย JSON
- เครื่องมือการจัดการทรัพยากร Dependency ของ Composer ที่ติดตั้งไว้ทั่วโลก
ไลบรารีของไคลเอ็นต์ Google APIs สำหรับ PHP
หากยังไม่เคยติดตั้งไลบรารีของไคลเอ็นต์ ให้เรียกใช้คำสั่งต่อไปนี้
composer require google/apiclient:^2.0หากเคยติดตั้งไลบรารีของไคลเอ็นต์ไว้ก่อนหน้านี้ เราขอแนะนำให้อัปเดตไลบรารีเพื่อให้แน่ใจว่าคุณมีคลาสที่อัปเดตล่าสุดสำหรับไลบรารีที่กำลังทดสอบ หากต้องการอัปเดตไลบรารีของไคลเอ็นต์ ให้เรียกใช้คำสั่งต่อไปนี้
composer update google/apiclient --with-dependencies
เรียกใช้ตัวอย่างโค้ด
ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง
php sample.php
ตัวอย่างส่วนใหญ่จะพิมพ์การตอบกลับจาก API (หรืออย่างอื่น) ไปยัง STDOUT
Python
ข้อกำหนดเบื้องต้น
- Python 2.7 หรือ Python 3.5 ขึ้นไป
- เครื่องมือการจัดการแพ็กเกจ pip
ไลบรารีของไคลเอ็นต์ Google APIs สำหรับ Python
pip install --upgrade google-api-python-clientไลบรารี
google-auth-oauthlibและgoogle-auth-httplib2สำหรับการให้สิทธิ์ผู้ใช้pip install --upgrade google-auth-oauthlib google-auth-httplib2
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เมธอดเข้าถึง
- ตั้งค่าประเภทแอปพลิเคชันเป็นแอปสำหรับเดสก์ท็อป
- หากสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลเข้าสู่ระบบ OAuth 2.0 ไฟล์นี้จะมีชื่อคล้ายกับ
client_secret_CLIENTID.jsonโดยที่CLIENTIDคือรหัสไคลเอ็นต์ของโปรเจ็กต์ - คัดลอกตัวอย่างโค้ดไปยังไฟล์ในเครื่องและแก้ไขตัวอย่างเพื่อระบุคีย์ API หรือไฟล์ข้อมูลลับไคลเอ็นต์อย่างถูกต้อง ในตัวอย่าง ค่าคีย์ API คือ
YOUR_API_KEYและตำแหน่งไฟล์ข้อมูลลับไคลเอ็นต์คือYOUR_CLIENT_SECRET_FILE.json
เรียกใช้ตัวอย่างโค้ด
ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง
python sample.py
ตัวอย่างส่วนใหญ่จะพิมพ์การตอบกลับจาก API (หรืออย่างอื่น) ไปยัง STDOUT
Ruby
ข้อกำหนดเบื้องต้น
- Ruby 2.0 ขึ้นไป
ไลบรารีของไคลเอ็นต์ Google APIs สำหรับ Ruby
gem install google-api-client`
ตั้งค่า
- ทำตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สำหรับแอปและเปิดใช้ API
- สร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เมธอดเข้าถึง
- ตั้งค่าประเภทแอปพลิเคชันเป็นแอปสำหรับเดสก์ท็อป
- หากสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลเข้าสู่ระบบ OAuth 2.0 ไฟล์นี้จะมีชื่อคล้ายกับ
client_secret_CLIENTID.jsonโดยที่CLIENTIDคือรหัสไคลเอ็นต์ของโปรเจ็กต์ - คัดลอกตัวอย่างโค้ดไปยังไฟล์ในเครื่องและแก้ไขตัวอย่างเพื่อระบุคีย์ API หรือไฟล์ข้อมูลลับไคลเอ็นต์อย่างถูกต้อง ในตัวอย่าง ค่าคีย์ API คือ
YOUR_API_KEYและตำแหน่งไฟล์ข้อมูลลับไคลเอ็นต์คือYOUR_CLIENT_SECRET_FILE.json
เรียกใช้ตัวอย่างโค้ด
ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง
ruby sample.rb
ตัวอย่างส่วนใหญ่จะพิมพ์การตอบกลับจาก API (หรืออย่างอื่น) ไปยัง STDOUT
แก้ปัญหาเกี่ยวกับตัวอย่าง
กล่องโต้ตอบการให้สิทธิ์ไม่ปรากฏขึ้น
โปรแกรมสำรวจ APIs ใช้ป๊อปอัปเพื่อให้สิทธิ์เข้าถึงข้อมูลส่วนตัวของคุณ หากเบราว์เซอร์บล็อกป๊อปอัป ป๊อปอัปนี้จะไม่ปรากฏขึ้นและคุณจะให้สิทธิ์เข้าถึงไม่ได้
หากคุณคลิก "อนุญาต" ในหน้าจอการให้สิทธิ์แล้วไม่มีอะไรเกิดขึ้น ให้ลองเปลี่ยนการตั้งค่าป๊อปอัปของเบราว์เซอร์เพื่อเปิดใช้ป๊อปอัป
ได้รับข้อผิดพลาด 401 หรือ 403
หากคุณได้รับข้อผิดพลาด 401 หรือ 403 เมื่อทดสอบตัวอย่าง ปัญหาน่าจะเกิดจากสาเหตุใดสาเหตุหนึ่งต่อไปนี้
- ไม่ได้เปิดใช้ API สำหรับโปรเจ็กต์ โปรดอ่านวิธีการสำหรับ API ของคุณเกี่ยวกับวิธีสร้างโปรเจ็กต์และเปิดใช้ API
- คุณใช้การให้สิทธิ์ประเภทที่ไม่ถูกต้อง (คีย์ API แทน OAuth 2.0)
- คุณใช้ OAuth 2.0 แต่มีขอบเขตที่แคบเกินไป
- เมื่อตั้งค่าคีย์ API คุณได้ตั้งค่าข้อจำกัดเพื่อป้องกันการใช้ข้อมูลเข้าสู่ระบบโดยไม่ได้รับอนุญาต อย่างไรก็ตาม คำขอไม่เป็นไปตามข้อจำกัดเหล่านั้น โปรดดูข้อมูลเพิ่มเติมที่ หัวข้อการใช้ข้อจำกัดคีย์ API
ได้รับคำเตือนเกี่ยวกับเนื้อหาผสม
หากคุณใช้ Google Cloud Endpoints และเรียกใช้ปลายทางใน เซิร์ฟเวอร์การพัฒนา, เบราว์เซอร์อาจแสดงคำเตือนเกี่ยวกับเนื้อหาผสม คำเตือนนี้เกิดขึ้นเนื่องจากโปรแกรมสำรวจ APIs โหลดผ่าน HTTPS แต่เมื่อ API ทำงานในเครื่อง ระบบจะโฮสต์ API ใน HTTP
หากต้องการซ่อนคำเตือนนี้โดยใช้ Chrome ให้เริ่มเซสชัน Chrome ด้วยแฟล็กพิเศษดังนี้
path/to/chrome --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:port
เช่น
/usr/bin/google-chrome-stable --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080
คุณควรซ่อนคำเตือนนี้เพื่อวัตถุประสงค์ในการทดสอบในเครื่องเท่านั้น
JavaScript เท่านั้น: ไม่ได้กำหนด gapi
ข้อผิดพลาด "ไม่ได้กำหนด gapi" เกิดขึ้นเมื่อโค้ด JavaScript พยายามเรียกใช้ไลบรารีของไคลเอ็นต์ Google APIs สำหรับ JavaScript ก่อนที่ไลบรารีจะโหลด ตรวจสอบว่าโค้ดที่อ้างอิงตัวแปร gapi จะไม่ถูกเรียกใช้จนกว่าไลบรารีของไคลเอ็นต์จะโหลดแล้ว