Oauth2

2016-03-30 16 views
1

ile Google API kimlik doğrulaması yapılamıyor Bir Google E-Tablosuna erişmeye yetkili olduğum bir Python betiğim vardı. Bunu çalıştırdığınızda şimdi, istisna atar Ama ne zaman: Ben hesapta herhangi bir değişiklik yapmadı ettikOauth2

import json 
import gspread 
from oauth2client.client import SignedJwtAssertionCredentials 

json_key = json.load(open('myapp-credentials.json')) 
scope = ['https://spreadsheets.google.com/feeds'] 
credentials = SignedJwtAssertionCredentials(
    json_key['client_email'], 
    json_key['private_key'], scope) 
gc = gspread.authorize(credentials) 

, bu yüzden neden bilmiyorum: gibi

oauth2client.client.AccessTokenRefreshError: invalid_client: The OAuth client was not found. 

Benim doğrulama kodu görünüyor aniden çalışmayı bırakırdı. https://console.developers.google.com/apis/credentials adresine giriş yaparsam uygulamanın hala kayıtlı olduğunu görüyorum. Bunu nasıl teşhis edebilirim ve erişimini yeniden etkinleştiririm? Bu hataya düşmek maalesef onlarca potansiyel sebep buluyor.

cevap

0

SignedJwtAssertionCredentials sınıfı, 5 Şubat 2016’dan itibaren removed from the source code ve işlevselliği ServiceAccountCredentials ile değiştirilmiştir. Bu, hataya neden olabilir.

gibi bir şey kullanmak isteyeceksiniz görünür oluşturmak için aşağıdaki sizin credentials: yanı

credentials = ServiceAccountCredentials.from_json_keyfile_name('myapp-credentials.json', scope) 

Bu Github issue thread yararlı olabilir.