我class BadRequest(Exception): pass
的 Lambda 函数中有。
我想让raise BadRequest("Invalid request params")
API 返回一个状态码为 400 和正文{ "message": "Invalid request params" }
(或等效项)的响应。
然而,简单地这样做会返回一个状态码为 200(哦,不!)和正文的响应
{
"errorMessage": "Invalid request params",
"errorType": "BadRequest",
"stackTrace": <my application code that the user shouldnt see>
}
在网上搜索后,似乎我有3个选择:
1)chalice
2)使用集成响应和方法响应将该错误解析为更好的响应。当我抛出异常时,我会喜欢正则表达式[BadRequest].*
并插入一个前缀(不是很优雅的 IMO)。
3) 使用Step Functions创建 API 的有状态表示。这似乎有点乏味,因为我需要学习 ASL,而且我不认识任何聋人。-.-
-.-亚马逊国家语言
我应该去哪个兔子洞,为什么?