ใช้ API การเผยแพร่ของ Chrome เว็บสโตร์

ภาพรวม

API การเผยแพร่ของ Chrome เว็บสโตร์มีชุดปลายทาง REST สำหรับการสร้าง อัปเดต และเผยแพร่รายการใน Chrome เว็บสโตร์โดยใช้โปรแกรม

การตั้งค่าเบื้องต้น

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

เปิดใช้ Chrome เว็บสโตร์ API

  1. ไปที่ Google Cloud Console
  2. สร้างโปรเจ็กต์ใหม่หรือเลือกโปรเจ็กต์ที่มีอยู่ สร้างโครงการใหม่ใน
Google Console
  3. ในแถบค้นหา ให้พิมพ์ "API ของ Chrome เว็บสโตร์"
  4. เปิดใช้ Chrome เว็บสโตร์ API

กำหนดค่าหน้าจอขอความยินยอม OAuth

  1. ไปที่หน้าจอขอความยินยอม OAuth
  2. เลือก External แล้วเลือก Create สร้างหน้าจอ
ขอความยินยอม OAuth
  3. กรอกช่องข้อมูลแอปที่จำเป็น (ระบุไว้ด้านล่าง) แล้วคลิกบันทึกและต่อไป
    • ชื่อแอป
    • อีเมลการสนับสนุนผู้ใช้
    • อีเมลติดต่อของนักพัฒนาซอฟต์แวร์
  4. ข้ามขอบเขต คลิกบันทึก แล้วคลิกต่อไป
  5. เพิ่มอีเมลลงในผู้ใช้ทดสอบ แล้วคลิกบันทึก แล้วคลิกต่อไป

รับคีย์การเข้าถึง

  1. ไปที่ข้อมูลเข้าสู่ระบบ
  2. คลิกสร้างข้อมูลเข้าสู่ระบบ แล้วคลิกรหัสไคลเอ็นต์ OAuth สร้างข้อมูลเข้าสู่ระบบ
  3. เลือกแอปเดสก์ท็อปในส่วนประเภทแอปพลิเคชัน
  4. กรอกชื่อแล้วคลิกสร้าง

คอนโซลจะมีรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์

การทดสอบแอปพลิเคชัน OAuth

คุณสามารถเรียกโทเค็นเพื่อการเข้าถึงเพื่อทำงานกับ API ได้ ตัวอย่างเช่น ป้อน URL นี้ในเบราว์เซอร์ โดยแทนที่ $CLIENT_ID ด้วย URL สำหรับแอปของคุณ:

https://accounts.google.com/o/oauth2/auth?response_type=code&scope=https://www.googleapis.com/auth/chromewebstore&client_id=$CLIENT_ID&redirect_uri=urn:ietf:wg:oauth:2.0:oob

คุณจะเห็นหน้าเว็บที่ขออนุญาตสำหรับขอบเขตที่ขอ

UI คำขอสิทธิ์

คลิกยอมรับและคัดลอกโค้ด ซึ่งควรมีหน้าตาเช่นนี้

UI สำหรับคัดลอกโค้ด

ให้ใช้ค่านี้เพื่อขอโทเค็นเพื่อการเข้าถึง ตัวอย่างเช่น เมื่อใช้ curl คุณจะได้รับโทเค็นเพื่อการเข้าถึงด้วยการเรียกใช้คำสั่งต่อไปนี้ (แทนที่ค่าของ $CLIENT_ID, $CLIENT_SECRET และ $CODE ด้วยค่าจากด้านบน)

> curl "https://accounts.google.com/o/oauth2/token" -d \
"client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET&code=$CODE&grant_type=authorization_code&redirect_uri=urn:ietf:wg:oauth:2.0:oob"

ซึ่งจะแสดงผลลัพธ์ เช่น

{
  "access_token" : "ya29...",
  "expires_in" : 3600,
  "refresh_token" : "1/rwn...",
  "scope": "https://www.googleapis.com/auth/chromewebstore",
  "token_type" : "Bearer",
}

ตอนนี้คุณสามารถใช้ access_token เพื่อเรียกใช้ API ได้แล้ว คุณสามารถใช้โทเค็นการรีเฟรชเพื่อรับโทเค็นเพื่อการเข้าถึงในอนาคตได้ด้วย โปรดทราบว่าโทเค็นจะหมดอายุหลังจากผ่านไป 1 ชั่วโมง

การใช้ API

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

ข้อควรพิจารณาสำหรับการใช้ Publish API มีดังนี้

ดูข้อมูลเพิ่มเติมเกี่ยวกับ API การเผยแพร่ของ Chrome เว็บสโตร์ได้ที่นี่

การอัปโหลดแพ็กเกจเพื่อสร้างรายการในร้านค้าใหม่

Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items
Type: POST
Header Parameters: 
  $TOKEN: the access token
Body content: the package file to upload

พิมพ์ตัวอย่างต่อไปนี้ในบรรทัดคำสั่ง:

> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-X POST \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items

การอัปโหลดแพ็กเกจเพื่ออัปเดตรายการในร้านค้าที่มีอยู่

Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID
Type: PUT
Header Parameters: 
  $TOKEN: the access token
Body content: the package file to upload

$ITEM_ID คือรหัสของรายการในเว็บสโตร์ที่มีอยู่

> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-X PUT \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID

การเผยแพร่รายการสู่สาธารณะ

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish
Type: POST
Header Parameters: 
  $TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish

การเผยแพร่รายการไปยังผู้ทดสอบที่เชื่อถือได้

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters
Type: POST
Header Parameters: 
  $TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters

การตรวจสอบสถานะการอัปโหลดของรายการ

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT
Type: GET
Header Parameters: 
  $TOKEN: the access token
curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-H "Expect:" \
-X GET \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT