当使用AWS CloudFront与API Gateway时,有时会遇到错误消息“缺少身份验证令牌”。这通常是由于未正确配置API Gateway身份验证所致。以下是解决此问题的步骤和代码示例:
确保在API Gateway中启用了身份验证。可以使用AWS管理控制台或AWS CLI来完成此操作。
在API Gateway的API配置中,找到“身份验证”选项。选择合适的身份验证类型,如API密钥、AWS Cognito用户池等。
配置相应的身份验证方法。以下是一个使用API密钥进行身份验证的示例:
---
swagger: "2.0"
info:
version: "1.0"
title: "My API"
paths:
/my-resource:
get:
responses:
"200":
description: "OK"
x-amazon-apigateway-api-key-source: HEADER
x-amazon-apigateway-api-key-required: true
import requests
url = "https://api.example.com/my-resource"
headers = {
"x-api-key": "your-api-key"
}
response = requests.get(url, headers=headers)
print(response.json())
在此示例中,我们将API密钥作为请求标头发送给API Gateway。
请根据您的实际需求和身份验证配置调整上述代码示例。