Khắc phục sự cố xác thực và uỷ quyền

Trang này mô tả một số vấn đề phổ biến mà bạn có thể gặp phải xác thực và uỷ quyền.

This app isn't verified

Nếu màn hình xin phép bằng OAuth hiển thị cảnh báo "Ứng dụng này chưa được xác minh", thông tin ứng dụng đang yêu cầu các phạm vi cấp quyền truy cập vào dữ liệu nhạy cảm của người dùng. Nếu ứng dụng dùng phạm vi nhạy cảm, ứng dụng của bạn phải trải qua quy trình xác minh để xoá cảnh báo đó và các hạn chế khác. Trong giai đoạn phát triển, bạn có thể tiếp tục qua cảnh báo này bằng cách chọn Nâng cao > Truy cập vào {Tên dự án} (không an toàn).

File not found error for credentials.json

Khi chạy mã mẫu, bạn có thể nhận được thông báo "không tìm thấy tệp" hoặc "không như thế tệp" thông báo lỗi liên quan đến thông tin xác thực.json.

Lỗi này xảy ra khi bạn không cho phép ứng dụng dành cho máy tính thông tin xác thực. Để tìm hiểu cách tạo thông tin đăng nhập đối với ứng dụng dành cho máy tính, hãy chuyển đến Tạo thông tin xác thực.

Sau khi bạn tạo thông tin đăng nhập, hãy nhớ lưu tệp JSON đã tải xuống dưới dạng credentials.json. Sau đó, di chuyển tệp đó vào thư mục đang làm việc.

Token has been expired or revoked

Khi chạy mã mẫu, có thể bạn sẽ nhận được thông báo "Mã thông báo đã hết hạn" hoặc "Đã thu hồi mã thông báo" .

Lỗi này xảy ra khi mã thông báo truy cập từ Máy chủ uỷ quyền của Google đã đã hết hạn hoặc đã bị thu hồi. Để biết thông tin về các nguyên nhân tiềm ẩn và cách khắc phục, hãy xem Làm mới thời gian hết hạn mã thông báo.

Lỗi Python

Sau đây là một số lỗi Python thường gặp.

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

Lỗi này có thể xảy ra trong Mac OSX, nơi cài đặt mặc định của six mô-đun (phần phụ thuộc của thư viện Python) được tải trước mô-đun pip . Để khắc phục vấn đề này, hãy thêm vị trí cài đặt của pip vào PYTHONPATH biến môi trường hệ thống:

  1. Xác định vị trí cài đặt của pip:

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

    Hãy ghi lại vị trí này vì vị trí này cần thiết cho bước tiếp theo.

  2. Thêm dòng sau vào tệp ~/.bashrc, thay thế INSTALL_PATH có vị trí được xác định từ bước trước đó:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. Tải lại tệp ~/.bashrc của bạn:

    source ~/.bashrc
    

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

Lỗi này là do một lỗi trong httplib2. Để giải quyết vấn đề này, hãy nâng cấp lên phiên bản mới nhất của httplib2:

pip install --upgrade httplib2

Cannot uninstall 'six'

Khi chạy lệnh pip install, bạn có thể gặp lỗi sau:

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.

Lỗi này xảy ra trên Mac OSX khi pip cố gắng nâng cấp tệp được cài đặt sẵn Gói six. Để giải quyết vấn đề này, hãy thêm cờ --ignore-installed six vào lệnh pip install.