แก้ปัญหาการตรวจสอบสิทธิ์และการให้สิทธิ์

หน้านี้จะอธิบายปัญหาที่พบบ่อยซึ่งคุณอาจพบเกี่ยวกับการตรวจสอบสิทธิ์และการให้สิทธิ์

This app isn't verified

หากหน้าจอขอความยินยอม OAuth แสดงคำเตือนว่า "แอปนี้ไม่ได้รับการยืนยัน" แสดงว่าแอปของคุณกำลังขอขอบเขตที่ให้สิทธิ์เข้าถึงข้อมูลผู้ใช้ที่ละเอียดอ่อน หากแอปพลิเคชันใช้ขอบเขตที่มีความละเอียดอ่อน แอปจะต้องผ่านกระบวนการยืนยันเพื่อนำคำเตือนและข้อจำกัดอื่นๆ ออก ในระหว่างระยะการพัฒนา คุณสามารถดำเนินการต่อโดยเลือกขั้นสูง > ไปที่ {ชื่อโปรเจ็กต์} (ไม่ปลอดภัย)

File not found error for credentials.json

เมื่อเรียกใช้ตัวอย่างโค้ด คุณอาจได้รับข้อความแสดงข้อผิดพลาด "ไม่พบไฟล์" หรือ "ไม่มีไฟล์ดังกล่าว" เกี่ยวกับ credentials.json

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

หลังจากสร้างข้อมูลเข้าสู่ระบบแล้ว ให้ตรวจสอบว่าไฟล์ JSON ที่ดาวน์โหลดไว้ได้รับการบันทึกเป็นcredentials.json จากนั้นย้ายไฟล์ไปยังไดเรกทอรีทํางาน

Token has been expired or revoked

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

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

ข้อผิดพลาดเกี่ยวกับ Python

ข้อผิดพลาดที่พบบ่อยของ Python มีดังนี้

AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'

ข้อผิดพลาดนี้อาจเกิดขึ้นใน Mac OSX เมื่อระบบโหลดการติดตั้งเริ่มต้นของโมดูล six (ทรัพยากรของไลบรารี Python) ก่อนโมดูลที่ pip ติดตั้ง หากต้องการแก้ไขปัญหานี้ ให้เพิ่มตำแหน่งการติดตั้งของ pip ลงในPYTHONPATHตัวแปรสภาพแวดล้อมของระบบ ดังนี้

  1. กำหนดตำแหน่งการติดตั้งของ pip โดยทำดังนี้

    pip show six | grep "Location:" | cut -d " " -f2
    

    จดบันทึกตำแหน่งนี้ไว้เนื่องจากต้องใช้ในขั้นตอนถัดไป

  2. เพิ่มบรรทัดต่อไปนี้ลงในไฟล์ ~/.bashrc โดยแทนที่ INSTALL_PATH ด้วยตำแหน่งที่ระบุจากขั้นตอนก่อนหน้า

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. โหลดไฟล์ ~/.bashrc อีกครั้งโดยทำดังนี้

    source ~/.bashrc
    

TypeError: sequence item 0: expected str instance, bytes found

ข้อผิดพลาดนี้เกิดจากข้อบกพร่องใน httplib2 หากต้องการแก้ไขปัญหานี้ ให้อัปเกรดhttplib2เป็นเวอร์ชันล่าสุดโดยทำดังนี้

pip install --upgrade httplib2

Cannot uninstall 'six'

เมื่อเรียกใช้คําสั่ง pip install คุณอาจได้รับข้อผิดพลาดต่อไปนี้

Cannot uninstall 'six'. It is a distutils installed project and thus we
cannot accurately determine which files belong to it which would lead to
only a partial uninstall.

ข้อผิดพลาดนี้เกิดขึ้นใน Mac OSX เมื่อ pip พยายามอัปเกรดแพ็กเกจ six ที่ติดตั้งไว้ล่วงหน้า หากต้องการแก้ปัญหานี้ ให้เพิ่ม Flag --ignore-installed six ลงในคําสั่ง pip install