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

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

This app isn't verified

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

File not found error for credentials.json

เมื่อเรียกใช้ตัวอย่างโค้ด คุณอาจได้รับข้อความแสดงข้อผิดพลาด "ไม่พบไฟล์" หรือ "ไม่พบไฟล์ดังกล่าว" เกี่ยวกับต้องระบุไฟล์ .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 ตามค่าเริ่มต้น (ทรัพยากร Dependency ของไลบรารี 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 ที่ติดตั้งไว้ล่วงหน้า หากต้องการแก้ไขปัญหานี้ ให้เพิ่มแฟล็ก --ignore-installed six ในคำสั่ง pip install