2015-09-06 2 views
0

Я хочу использовать "экземпляры" в API Python ... для некоторого reaseon, мой код возвращает пустой Ошибка:GCE - основное использование API - Инстансы

Error: [] 

мой код:

email = "[email protected]" 
with open("somefile.p12") as f: 
    pkey = f.read() 
cred = SignedJwtAssertionCredentials(email,key, "https://www.googleapis.com/auth/devstorage.read_write") 
compute = build('compute','v1',credentials=cred) 

затем с простейшим API вызова:

compute.instances().list(project="firebase-client", zone="us-central1-f").execute() 

ошибка выскакивает ...

+0

Вы используете 'pkey = ...', но затем используете его как 'SignedJwtAssertionCredentials (email, key, ...)' - это вопрос о правописании здесь? –

+1

Также, как я реализовал проверку подлинности GCE в Python: https://github.com/mbrukman/cloud-launcher/blob/master/src/cloud_launcher.py - обратите внимание, что я запрашиваю область вычисления 'https: // www.googleapis.com/auth/compute' там. –

+0

Да, URL-адрес области действительно был проблемой. (pkey был в порядке на моем коде :)) спасибо:] –

ответ

1

Как упоминалось и подтверждено в комментарии, решение здесь заключается в использовании правильной области: https://www.googleapis.com/auth/compute - это то, что вы хотите для доступа на чтение и запись к API Google Compute Engine.

URL-адрес области действия в примере кода вопроса: https://www.googleapis.com/auth/devstorage.read_write обеспечивает доступ на чтение и запись к Google Cloud Storage API.

Смежные вопросы