![](/img/trans.png)
[英]AWS: Getting 400 Bad Request error from AmazonCloudWatch.GetMetricStatistics()
[英]Amplify (AWS) Verification Email Gives 400 Bad Request Error
我对 Amplify 很陌生,在过去一个半月左右的时间里,我一直在通过 amplify-cli 和 aws 控制台使用它,并且在此过程中学到了很多东西。 但是最近我遇到了一个其他人似乎没有的问题(我可以通过在互联网上搜索找到)。
我已经设置了我的React项目,它使用了来自 aws 的 3 项主要服务:
这些是我的应用程序中包含的三个主要服务。
出于某种奇怪的原因,在过去的几天里,当我实施注册身份验证时,用户收到了验证 email 并且我点击了验证链接,我现在得到了这个错误:
以前从来没有这种情况,并且曾经完美地工作过。 从那以后,我多次擦除了所有后端资源,甚至从头开始构建了整个放大项目,但我仍然不断收到该错误。
这是我的parameters.json
的一部分。json 文件(在放大目录内)
"verificationBucketName": "hulpio17b04d80verificationbucket",
"parentStack": {
"Ref": "AWS::StackId"
},
"permissions": [],
"dependsOn": [
{
"category": "function",
"resourceName": "hulpio17b04d80CustomMessage",
"triggerProvider": "Cognito",
"attributes": [
"Arn",
"Name"
]
}
],
下面是我在 aws 控制台上的 s3 存储桶的屏幕截图:
我已经尝试了很多事情,但是对于我的生活,我无法理解为什么这个错误仍然会出现,即使我已经擦除了所有内容并从头开始。
PS 我的应用程序托管在Ireland eu-west-1
,因此我使用的所有服务都托管在那里,除了 s3 存储桶,它显然是全球性的,而不是本地化到单个区域。
所以,我有一个小的更新,但它不是一个完整的解决方案。
更多的黑客真的。
在verification-link.js
文件中,我对一行进行了更改
const bucketUrl = `http://${resourcePrefix}verificationbucket-${process.env.ENV}.s3-website${seperator}${region}.amazonaws.com`;
我手动将其更改为
const bucketUrl = `http://hulpio17b04d80verificationbucket-${process.env.ENV}.s3-website${seperator}${region}.amazonaws.com`;
这一次,当我点击验证 URL 时,它开始工作了。
现在虽然这很棒,而且我可以破解它,但我当然不认为这是一个好的长期解决方案。 似乎由于某种原因,资源前缀没有被传递给verification-link.js
我仍在搜索,仍然非常欢迎对此提供任何帮助。
提前致谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.