javascript - 使用带有 API 网关 (CORS) 的超级代理发出 GET 请求
问题描述
因此,我遇到了 CORS 问题,我阅读了一些相关问题,这些人也遇到了 CORS 问题,并尝试了所有这些答案,但没有任何运气;所以我现在问我的问题,因为其他答案都没有成功。
我有一个使用 NodeJS Javascript 在 GatsbyJS 中运行的网站和一个带有 Lambda 代理集成的 API 网关。假设 api 端点是https://xxxx.execute-api.us-east-1.amazonaws.com/default
JSON:
{
"message": "Welcome"
}
现在的问题是收到的错误基本上是说“No Access-Control-Allow-Origin”标头存在于同一来源。它谈到它丢失了但是我去了这里按照本指南并添加了带有 Mock https://enable-cors.org/server_awsapigateway.html的选项方法 重新部署了 api 网关端点,甚至尝试添加 .set(headers, values ) 到我的超级代理获取请求,但仍然出现相同的错误。
我对如何解决这个问题没有想法。
这是我的代码示例:
superagent
.get('https://xxxx.execute-api.us-east-1.amazonaws.com/default')
.set('Access-Control-Allow-Origin', '*')
.set('Access-Control-Allow-Credentials', 'true')
.set('accept', 'json')
.end((err, res) => {
// Calling the end function will send the request
console.log(res) // I should get welcome back
});
拉姆达:
def lambda_handler(event, context):
# TODO implement
website_content = {
'message': 'welcome'
}
return {
'statusCode': 200,
'body': json.dumps(website_content)
}
解决方案
试试 cors npm。例如启用您可以使用的所有 CORS 请求
const cors = require('cors')
app.use(cors())
推荐阅读
- java - Java 枚举值字段在定义之外无法访问
- android - Android:如何使用意图数据返回先前的活动?
- scala - 将 Option 与 .map() 和 .getOrElse() 一起使用
- angular - Angular 7:在组件中使用外部脚本
- python - 共享模块变量不更新?
- python - 使用 PySpark 的多个连接
- css - Colspan 在 html5 表中无法正常工作
- c# - 从条带获取响应时出错“无法加载文件或程序集‘System.Collections.Immutable’
- excel - 使用 DAX 将 Excel 公式转换为 Power BI - 对具有相同 ID 的多个值求和
- javascript - Avoiding PhpStorm vue tag string line breaks in function arguments