Я пытаюсь обновить хром-приложение программно, используя Chrome Web Store Publishing API.Использовать в API публикации магазина Chrome с учетной записью службы OAuth2
Мне нужно использовать метод проверки подлинности сервера и сервера, и для моего проекта создайте учетную запись службы oauth2 на Google developer console. И скачал учетные данные как key.p12.
Затем я попытаюсь использовать Google API Client for Python. Несмотря на то, что API не поддерживает Интернет-магазин Chrome, он должен иметь возможность использовать его части.
Я создал небольшой скрипт в Python, чтобы попытаться получить список моих Chrome элементов Web Store:
"""Creates a connection to Google Chrome Webstore Publisher API."""
from apiclient.discovery import build
import httplib2
from oauth2client import client
import os
SERVICE_ACCOUNT_EMAIL = (
'[email protected]')
def getservice():
# get relative path to p12 key
dir = os.path.dirname(__file__)
filename = os.path.join(dir, 'key.p12')
# Load the key in PKCS 12 format that you downloaded from the Google APIs
# Console when you created your Service account.
f = file(filename, 'rb')
key = f.read()
f.close()
# Create an httplib2.Http object to handle our HTTP requests and authorize it
# with the Credentials. Note that the first parameter, service_account_name,
# is the Email address created for the Service account. It must be the email
# address associated with the key that was created.
credentials = client.SignedJwtAssertionCredentials(
SERVICE_ACCOUNT_EMAIL,
key,
scope='https://www.googleapis.com/auth/chromewebstore.readonly')
http = httplib2.Http()
http = credentials.authorize(http)
response = http.request('https://www.googleapis.com/chromewebstore/v1.1/items/[___my_chrome_webstore_app_id___]')
print response
Даже если аутентификации в направлении https://www.googleapis.com/auth/chromewebstore.readonly является успешных, результаты ответа в ошибка.
Мои вопросы:
- Имеет ли 403 происходят, так как учетная запись службы не имеет доступ ко моему Google элементы хрома Webstore?
- Возможно ли аутентификация и использование API Chrome Store без использования моей личной учетной записи, которая публикуется в интернет-магазине (но подключенная учетная запись службы)?
- Как я могу получить действительный authToken для использования в API веб-магазина Chrome без проверки подлинности пользователя через
flow
.
Спасибо, у вас есть ссылка на площадку Oauth? – Rias
https://developers.google.com/oauthplayground/ – pinoyyid
Спасибо @pinoyyid за то, что указали мне на Игровое поле, отличный инструмент! К сожалению, я до сих пор не могу получить доступ к веб-сайту Chrome с игровой площадкой. Я попытался сделать авторизацию потока и дал доступ к моей личной учетной записи разработчика (той, с которой я опубликовал приложение Chrome chrome). Я получаю код аутентификации и токен доступа для области https://www.googleapis.com/auth/chromewebstore, но если я попробую токен по адресу https://www.googleapis.com/chromewebstore/v1.1/ items/Я все еще получаю 403. Я использую это руководство для создания заголовков: https://developer.chrome.com/webstore/using_webstore_api#usingtheapi – Rias