是否可以使用 Python 通过 Cognito 身份验证调用 AppSync 突变?怎么办?
我正在尝试使用 boto3,但我没有找到执行 graphql 操作的方法。
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appsync.html
最佳答案
您可以将 API 身份验证模式设置为“API KEY”,并使用 http 调用 AppSync 突变。
例如。
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())
只需用变异操作替换字符串即可。
关于python - 如何使用 python 通过 Cognito 身份验证调用 AppSync 突变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56467994/