要配置AWS SAM本地运行时的跨域资源共享(CORS),您需要在AWS SAM模板中定义API Gateway的CORS策略。以下是一个包含代码示例的解决方法:
Resources:
MyApi:
Type: AWS::Serverless::Api
Properties:
StageName: dev
Cors:
AllowMethods: "'GET,PUT,POST,DELETE'"
AllowHeaders: "'Content-Type'"
AllowOrigin: "'*'"
在这个示例中,我们指定了允许的HTTP方法(GET,PUT,POST和DELETE),允许的标头(Content-Type)和允许的来源(*表示允许所有来源)。
sam build
sam local start-api
fetch('http://localhost:3000/myendpoint', {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.log(error));
在这个示例中,我们使用了JavaScript的fetch函数来从本地访问API端点,并设置了Content-Type标头。
请注意,以上示例中的AllowOrigin值设置为*,这表示允许来自任何来源的请求。在实际生产环境中,您应该根据需要更改AllowOrigin值以限制允许的来源。