เรียกใช้ตัวอย่างโค้ด

Google APIs Explorer สร้างตัวอย่างโค้ดแบบไดนามิก โค้ดตัวอย่างเหล่านี้ ออกแบบมาเพื่อให้คัดลอกและเรียกใช้ในเครื่อง หากต้องการดูตัวอย่าง ให้คลิกเต็มหน้าจอในแผงด้านข้างของ API Explorer รูปด้านล่างแสดงโปรแกรมสํารวจ APIs แบบเต็มหน้าจอที่ขยาย

แผงสํารวจ API แบบเต็มหน้าจอสําหรับ Google Books API
รูปที่ 2: แผง API Explorer แบบเต็มหน้าจอสําหรับ Google Books API

โดยค่าเริ่มต้น API Explorer จะแสดงวิธีใช้ cURL ในการดําเนินการตามคําขอของคุณ API บางอย่างอาจแสดงตัวอย่างภาษาอื่นๆ ด้วย เช่น JavaScript, Java และ Python

เรียกใช้ตัวอย่างโค้ดในเครื่อง

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

ข้อมูลรับรองจะเป็นรายการใดรายการหนึ่งต่อไปนี้ โดยขึ้นอยู่กับประเภทของข้อมูล (สาธารณะหรือส่วนตัว) ที่วิธีการเข้าถึง

  • สําหรับข้อมูลสาธารณะ ข้อมูลเข้าสู่ระบบคือคีย์ API
  • สําหรับข้อมูลส่วนตัว ข้อมูลเข้าสู่ระบบคือไฟล์ client_secret.json ที่มีรหัสไคลเอ็นต์ OAuth 2.0 และรหัสลับไคลเอ็นต์ หรือโทเค็นการเข้าถึง OAuth 2.0

URL

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. สร้างคีย์ API ใน Cloud Console
  3. ใน Cloud Console ให้สร้างข้อมูลเข้าสู่ระบบของรหัสไคลเอ็นต์ OAuth สําหรับเว็บแอปพลิเคชัน และใช้ https://developers.google.com/oauthplayground เป็น URI การเปลี่ยนเส้นทาง
  4. ใน Playground 2.0 ให้คลิกการกําหนดค่า OAuth 2.0
  5. เลือกช่องใช้ข้อมูลเข้าสู่ระบบของคุณเอง
  6. ป้อนรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ที่สร้างขึ้นในขั้นตอนที่ 3
  7. ในช่องขอบเขต ให้พิมพ์ขอบเขตที่จะใช้กับเมธอด แล้วคลิกให้สิทธิ์ API
  8. (ไม่บังคับ) หากมีหน้าจอลงชื่อเข้าใช้ ให้เลือกบัญชีที่จะใช้
  9. (ไม่บังคับ) หากมีหน้าจอการให้สิทธิ์ ให้คลิกยอมรับ
  10. คลิกรหัสการให้สิทธิ์ของ Exchange สําหรับโทเค็น ระบบจะแสดงผลโทเค็น
  11. ในตัวอย่างโค้ด cURL ให้แทนที่ [YOUR_API_KEY] ด้วยคีย์ API ที่สร้างขึ้นในขั้นตอนที่ 2 'https://www.googleapis.com/drive/v3/files?key=[YOUR_API_KEY]' \
  12. ในตัวอย่างโค้ด 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

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. สร้างคีย์ API ใน Cloud Console
  3. ใน Cloud Console ให้สร้างข้อมูลเข้าสู่ระบบของรหัสไคลเอ็นต์ OAuth สําหรับ "เว็บแอปพลิเคชัน&quot และกําหนดต้นทางของ JavaScript ที่ได้รับอนุญาตเพื่อระบุ URL ที่คุณจะส่งคําขออย่างเช่น http://localhost
  4. คัดลอกตัวอย่างโค้ดแบบเต็มไปยังเว็บเซิร์ฟเวอร์ที่คุณเข้าถึงได้ เช่น /var/www/html/example.html
  5. ค้นหาบรรทัดในตัวอย่างโค้ดที่กําหนดคีย์ API หรือรหัสไคลเอ็นต์ และแทนที่ค่าด้วยค่าที่สร้างขึ้นในขั้นตอนที่ 2 และ 3 ดังนี้

    • คีย์ API: gapi.client.setApiKey(YOUR_API_KEY);
    • รหัสไคลเอ็นต์ OAuth 2.0: gapi.client.init({ 'clientId': 'YOUR_CLIENT_ID',

ดําเนินการตัวอย่างโค้ด

  1. เปิดไฟล์ในเบราว์เซอร์ เช่น http://localhost/example.html ขอแนะนําให้ใช้เบราว์เซอร์ที่มีคอนโซลการแก้ไขข้อบกพร่อง เช่น Google Chrome
  2. (ไม่บังคับ) หากมีหน้าจอลงชื่อเข้าใช้ ให้เลือกบัญชีที่จะใช้
  3. (ไม่บังคับ) หากมีหน้าจอการให้สิทธิ์ ให้คลิกยอมรับ คอนโซลดีบักควรแสดงการตอบกลับเมธอดเป็นออบเจ็กต์ JSON

Java

ข้อกำหนดเบื้องต้น

  • Java 1.7 ขึ้นไป
  • ตั้งแต่ 7 ขึ้นไป

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. โดยสร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เข้าถึง
  3. ตั้งค่าประเภทแอปพลิเคชันเป็นแอปบนเดสก์ท็อป
  4. หากคุณสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลรับรอง OAuth 2.0 ไฟล์นี้มีชื่อคล้ายกับ client_secret_CLIENTID.json โดยที่ CLIENTID คือรหัสไคลเอ็นต์ของโปรเจ็กต์
  5. ในไดเรกทอรีที่ใช้งานอยู่ ให้เรียกใช้คําสั่งต่อไปนี้เพื่อสร้างโครงสร้างโปรเจ็กต์ใหม่

    $ gradle init --type basic
    $ mkdir -p src/main/java src/main/resources
    
  6. หากคุณสร้างรหัสไคลเอ็นต์ OAuth 2.0 ในขั้นตอนที่ 2 ให้เปลี่ยนชื่อไฟล์ JSON ที่คุณดาวน์โหลดมายัง client_secret.json

  7. บันทึกไฟล์ที่เปลี่ยนชื่อได้ในไดเรกทอรี src/main/resources ที่คุณสร้างในขั้นตอนที่ 5

  8. ในไดเรกทอรีที่ใช้งานได้ ให้เปิดไฟล์ 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
    }
    
  9. ในไฟล์ 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 API ที่รองรับ ลิงก์เวอร์ชันจะไปยัง GitHub ชื่อ API จะอยู่ที่ตรงกลางของหน้า และนําหน้าด้วย googleapis/google-apis-services- เช่น สําหรับเวอร์ชัน 3 ของ API ไดรฟ์ API_NAME คือ drive
  • API_VERSION คือเวอร์ชัน API ที่ระบุไว้สําหรับ API ใต้ชื่อ API ในหน้า Google API ที่รองรับ
  • REVISION คือหมายเลขรุ่นที่ระบุในการอ้างอิง JavaDoc สําหรับ API ดูการอ้างอิง JavaDoc ได้ที่ https://googleapis.dev/java/google-api-services-API_NAME/latest/index.html
  • CL_VERSION คือเวอร์ชันไลบรารีของไคลเอ็นต์ โดยค่านี้จะปรากฏในการอ้างอิง JavaDoc ด้วย
  • จากไดเรกทอรีการทํางาน ให้คัดลอกตัวอย่างโค้ดจาก API Explorer ไปยัง 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
    

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. โดยสร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เข้าถึง
  3. ตั้งค่าประเภทแอปพลิเคชันเป็นแอปบนเดสก์ท็อป
  4. หากคุณสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลรับรอง OAuth 2.0 ไฟล์นี้มีชื่อคล้ายกับ client_secret_CLIENTID.json โดยที่ CLIENTID คือรหัสไคลเอ็นต์ของโปรเจ็กต์
  5. คัดลอกตัวอย่างโค้ดลงในไฟล์ในเครื่องแล้วแก้ไขตัวอย่างเพื่อระบุคีย์ API หรือไฟล์รหัสลับไคลเอ็นต์อย่างถูกต้อง ในตัวอย่างนี้ ค่าคีย์ API คือ YOUR_API_KEY และตําแหน่งของไฟล์รหัสลับไคลเอ็นต์คือ YOUR_CLIENT_SECRET_FILE.json

ดําเนินการตัวอย่างโค้ด

ใช้คําสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง

  node sample.js

ตัวอย่างส่วนใหญ่พิมพ์การตอบกลับ API (หรือสิ่งอื่นๆ) ไปยัง STDOUT

PHP

ข้อกำหนดเบื้องต้น

  • PHP 5.4 หรือใหม่กว่าที่มีอินเทอร์เฟซบรรทัดคําสั่ง (CLI) และส่วนขยาย JSON
  • เครื่องมือจัดการทรัพยากร Dependency สําหรับผู้เขียน ที่ติดตั้งไว้ทั่วโลก
  • ไลบรารีของไคลเอ็นต์ 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
    

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. โดยสร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เข้าถึง
  3. ตั้งค่าประเภทแอปพลิเคชันเป็นแอปบนเดสก์ท็อป
  4. หากคุณสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลรับรอง OAuth 2.0 ไฟล์นี้มีชื่อคล้ายกับ client_secret_CLIENTID.json โดยที่ CLIENTID คือรหัสไคลเอ็นต์ของโปรเจ็กต์
  5. คัดลอกตัวอย่างโค้ดลงในไฟล์ในเครื่องแล้วแก้ไขตัวอย่างเพื่อระบุคีย์ 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`
    

ตั้งค่า

  1. ทําตามวิธีการในเอกสารประกอบของ API เพื่อสร้างหรือเลือกโปรเจ็กต์สําหรับแอปของคุณ และเปิดใช้ API
  2. โดยสร้างคีย์ API (ข้อมูลสาธารณะ) หรือสร้างรหัสไคลเอ็นต์ OAuth 2.0 (ข้อมูลส่วนตัว) โดยขึ้นอยู่กับประเภทข้อมูลที่เข้าถึง
  3. ตั้งค่าประเภทแอปพลิเคชันเป็นแอปบนเดสก์ท็อป
  4. หากคุณสร้างรหัสไคลเอ็นต์ OAuth 2.0 ให้ดาวน์โหลดไฟล์ JSON ที่มีข้อมูลรับรอง OAuth 2.0 ไฟล์นี้มีชื่อคล้ายกับ client_secret_CLIENTID.json โดยที่ CLIENTID คือรหัสไคลเอ็นต์ของโปรเจ็กต์
  5. คัดลอกตัวอย่างโค้ดลงในไฟล์ในเครื่องแล้วแก้ไขตัวอย่างเพื่อระบุคีย์ API หรือไฟล์รหัสลับไคลเอ็นต์อย่างถูกต้อง ในตัวอย่างนี้ ค่าคีย์ API คือ YOUR_API_KEY และตําแหน่งของไฟล์รหัสลับไคลเอ็นต์คือ YOUR_CLIENT_SECRET_FILE.json

ดําเนินการตัวอย่างโค้ด

ใช้คําสั่งต่อไปนี้เพื่อเรียกใช้ตัวอย่าง

  ruby sample.rb

ตัวอย่างส่วนใหญ่พิมพ์การตอบกลับ API (หรือสิ่งอื่นๆ) ไปยัง STDOUT

แก้ปัญหาตัวอย่าง

กล่องโต้ตอบการให้สิทธิ์ไม่ปรากฏขึ้น

API Explorer จะใช้ป๊อปอัปเพื่อให้สิทธิ์เข้าถึงข้อมูลส่วนตัว หากเบราว์เซอร์บล็อกป๊อปอัป ป๊อปอัปนี้จะไม่ปรากฏ และคุณจะให้สิทธิ์เข้าถึงไม่ได้

หากคุณคลิก "Allow" ในหน้าจอการให้สิทธิ์และไม่มีอะไรเกิดขึ้น ให้ลองเปลี่ยนการตั้งค่าป๊อปอัปของเบราว์เซอร์เพื่อเปิดใช้ป๊อปอัป

ได้รับข้อผิดพลาด 401 หรือ 403

หากคุณได้รับข้อผิดพลาด 401 หรือ 403 ขณะทดสอบตัวอย่าง อาจเป็นเพราะปัญหาข้อใดข้อหนึ่งต่อไปนี้

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

ได้รับคําเตือนเกี่ยวกับเนื้อหาผสม

หากใช้ Google Cloud Endpoint และเรียกใช้ปลายทางในเซิร์ฟเวอร์การพัฒนา เบราว์เซอร์อาจแสดงคําเตือนเกี่ยวกับเนื้อหาผสม คําเตือนนี้เกิดขึ้นเพราะ API Explorer โหลดผ่าน HTTPS แต่เมื่อ 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 API สําหรับ JavaScript ก่อนที่ไลบรารีจะโหลด ตรวจสอบว่าโค้ดที่อ้างอิงตัวแปร gapi ไม่ได้ถูกเรียกใช้จนกว่าจะโหลดไลบรารีของไคลเอ็นต์แล้ว