ไลบรารีของไคลเอ็นต์ Google APIs สำหรับการใช้งาน .NET
client_secrets.json ไฟล์สำหรับจัดเก็บ
client_id, client_secret และพารามิเตอร์ OAuth 2.0 อื่นๆ
client_secrets.json
เป็นไฟล์ในรูปแบบ JSON
ที่มีรหัสไคลเอ็นต์ รหัสลับไคลเอ็นต์ และพารามิเตอร์ OAuth 2.0 อื่นๆ
ต่อไปนี้คือตัวอย่างไฟล์ client_secrets.json สำหรับเว็บแอปพลิเคชัน
{
"web": {
"client_id": "asdfjasdljfasdkjf",
"client_secret": "1912308409123890",
"redirect_uris": ["https://www.example.com/oauth2callback"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token"
}
}
ต่อไปนี้คือตัวอย่างไฟล์ client_secrets.json สำหรับแอปพลิเคชันที่ติดตั้ง
{
"installed": {
"client_id": "837647042410-75ifg...usercontent.com",
"client_secret":"asdlkfjaskd",
"redirect_uris": ["http://localhost"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token"
}
}รูปแบบจะกำหนดรหัสไคลเอ็นต์ 1 ใน 2 ประเภทต่อไปนี้
web: เว็บแอปพลิเคชันinstalled: แอปพลิเคชันที่ติดตั้ง
ออบเจ็กต์ย่อย web และ installed มี
สมาชิกที่จำเป็นดังต่อไปนี้
-
client_id(สตริง): รหัสไคลเอ็นต์ -
client_secret(สตริง): รหัสลับไคลเอ็นต์
สมาชิกอื่นทั้งหมดของไฟล์นี้เป็นแบบไม่บังคับและ ไลบรารีของไคลเอ็นต์ .NET จะไม่ใช้ไลบรารีเหล่านี้
แรงจูงใจ
แต่เดิมผู้ให้บริการปลายทาง OAuth 2.0 คาดหวังว่า
ผู้ที่ใช้บริการของตนในการคัดลอกและวางรหัสไคลเอ็นต์
และรหัสลับไคลเอ็นต์จากหน้าการลงทะเบียนเป็นโค้ดที่ใช้งานได้
วิธีนี้เกิดข้อผิดพลาดได้ง่ายและให้รูปภาพที่ไม่สมบูรณ์
ที่จำเป็นเพื่อให้ OAuth 2.0 ทำงานได้
(OAuth 2.0 ยังต้องทราบปลายทางทั้งหมด
และกำหนดค่า URI การเปลี่ยนเส้นทาง)
หากผู้ให้บริการมี client_secrets.json ที่ดาวน์โหลดได้
และไลบรารีของไคลเอ็นต์จะเตรียมใช้งานไฟล์เหล่านี้
การใช้ OAuth 2.0 ก็จะง่ายขึ้นและมีแนวโน้มที่จะเกิดข้อผิดพลาดน้อยลง