Нет ETag в ответ от Amazon Appstore - PullRequest
0 голосов
/ 07 апреля 2020

В рамках перехода моей команды от ручной загрузки к автоматической c загрузки я пытаюсь реализовать процесс замены apk в Amazon Appsotre. Я написал код на основе примера, который Amazon опубликовал для этого потока.

'' '

# Get the current list of APKs
get_apks_path = f"v1/applications/{app_id}/edits/{edit_id}/apks"
get_apks_url = '/'.join([BASE_URL, get_apks_path])
apks = requests.get(get_apks_url, headers=token)
apks_json = apks.json()
if 'Message' in apks_json:
    print(apks.content)
    sys.exit(1)
else:
    if apks_json.headers['ETag'] is None:
        print("No Etag found")
        sys.exit(1)
    else:
        etag = apks.headers['Etag']
    firstapk = apks_json[0]
    apk_id = firstapk['id']
    replace_apk_path = f"v1/applications/{app_id}/edits/{edit_id}/apks/{apk_id}/replace"
    # Open the apk file on your local machine
    local_apk = open(apk_location, 'rb').read()
    replace_apk_url = '/'.join([BASE_URL, replace_apk_path])
    all_headers = {
           'Content-Type': 'application/vnd.android.package-archive',
           'If-Match': etag
       }
    all_headers.update(token)
    replace_apk_response = requests.put(replace_apk_url,  data=local_apk, headers=all_headers)
    print(replace_apk_response.content)

' ''

Проблема в том, что когда я читая ответ на запрос GET, я не вижу ETag, который является обязательным для завершения потока. Я что-то пропустил? Ссылки для объяснения об ETag и пример: https://developer.amazon.com/docs/app-submission-api/flows.html#about -etags https://developer.amazon.com/docs/app-submission-api/python-example.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...