可能是IAM策略设置引起的错误,需要检查API Gateway和EventBridge的IAM策略。以下是一些示例代码,可以用于解决问题:
API Gateway的IAM策略:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:REGION:ACCOUNT_ID:API_ID/*" ] } ] }
EventBridge的IAM策略:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EventBridgeAccess", "Effect": "Allow", "Action": [ "events:PutEvents", "events:PutRule", "events:DescribeRule" ], "Resource": "*" } ] }
如果IAM策略正常,还需检查EventBridge规则是否与API Gateway的路径匹配。例如,如果API Gateway的路径为/my-api,那么EventBridge规则的路径应设置为/my-api/*。
最后,也要检查API Gateway设置中的CORS配置,确认是否启用了适当的CORS规则。