Как вызвать мутацию AppSync с аутентификацией Cognito, используя python? - PullRequest
0 голосов
/ 06 июня 2019

Можно ли вызвать мутацию AppSync с аутентификацией Cognito с использованием Python?Как?

Я пытаюсь использовать boto3, но я не нашел способа выполнить операции graphql.

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appsync.html

1 Ответ

1 голос
/ 06 июня 2019

Вы можете переключить режим аутентификации API на «API KEY» и вызвать мутацию AppSync с http.

Например.

import requests
import json

APPSYNC_API_KEY = 'da2-xxxxxxxxxxxxx'
APPSYNC_API_ENDPOINT_URL = 'https://xxxxxxxxxxxxx.appsync-api.us-west-2.amazonaws.com/graphql'

headers = {
    'Content-Type': "application/graphql",
    'x-api-key': APPSYNC_API_KEY,
    'cache-control': "no-cache",
}

def execute_gql(query):
    payload_obj = {"query": query}
    payload = json.dumps(payload_obj)
    response = requests.request("POST", APPSYNC_API_ENDPOINT_URL, data=payload, headers=headers)
    return response

Представьте, что у вас есть модель с именем Items, и вы можете легко сделать запрос, как показано ниже:

if __name__ == '__main__':
    print(execute_gql("query { listItems { items { id name } } }").json())

Просто замените строку операцией мутации.

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