2015-11-12 3 views
0

Этот код (который основан на quickstart.py, например, в https://developers.google.com/drive/web/quickstart/python) ...Google Drive API Python Client недостаточное разрешение для файлов(). Вставить()

credentials = get_credentials() 
http = credentials.authorize(httplib2.Http()) 
service = discovery.build('drive', 'v2', http=http) 

media_body = MediaFileUpload('small_data_file.txt', mimetype='text/plain') 
body = {'title': 'My document', 'description': 'A test document', 'mimeType': 'text/plain'} 

file = service.files().insert(body=body, media_body=media_body).execute() 

... дает мне HttpError 403 Недостаточное разрешение.

Область действия.: Список '' https://www.googleapis.com/auth/drive

Оба файла()() и files.get() работают нормально. MediaFileUpload - apiclient.http.MediaFileUpload()

Есть ли проблема с областью действия или проблема в чем-то совершенно другом?

+1

Я пробовал код и работал для меня. Попробуйте создать новые маркеры, а также попробуйте вставить файл в другую среду, например, в разделе «Попробуйте» в документации: https://developers.google.com/drive/v2/reference/files/insert – Gerardo

+0

«Создание новых токенов «был в основном ответом, но мне потребовалось некоторое время, чтобы понять, почему. Спасибо – Riccati

ответ

1

Проблема заключалась в том, что диск-питон-quickstart.json файл, созданный quickstart.py была устареть. Я удалил этот файл. Однажды quickstart.py создал новый, все отлично работало.

0

Я вижу в https://developers.google.com/drive/v2/reference/files/insert#auth

, что вам нужно один из 4 областей для вставки() для этого приложения. Какие у вас есть разрешения?

+0

Я использую наиболее разрешающую область, поэтому я не думаю, что это проблема. См. Оригинальный вопрос. – Riccati

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