这是由于目标组作为中间层,将来自客户端的请求转发到后端实例时,未传递相应的CORS头信息。因此,需要在目标组上启用CORS。可以在目标组的“监听规则”中添加CORS配置,如下所示:
{
"CORSRules": [
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"POST",
"PUT",
"DELETE",
"HEAD"
],
"AllowedOrigins": [
"*"
],
"MaxAgeSeconds": 3000
}
]
}
这样就能解决CORS问题了。
∠
另外,如果使用Lambda函数作为后端实例,还需要在函数中添加相应的CORS头信息。示例代码如下:
exports.handler = function(event, context, callback) {
const response = {
statusCode: 200,
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Headers": "*",
"Access-Control-Allow-Methods": "OPTIONS, GET, POST, PUT, DELETE"
},
body: "Hello world!"
};
callback(null, response);
};