从node.js代码调用API时出现403禁止错误,而从Postman正常工作

时间:2018-11-21 12:44:47

标签: aws-lambda microservices aws-api-gateway

我在AWS lambda上部署了微服务,在EC2实例上部署了node.js代码。

当我尝试从邮递员访问微服务API时,它给出了正确的响应。 但是,如果我从node.js代码调用相同的API,它将失败,并显示错误代码403。

错误-

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>403 ERROR</H1>
<H2>The request could not be satisfied.</H2>
<HR noshade size="1px">
Bad request.

<BR clear="all">
<HR noshade size="1px">
<PRE>
Generated by cloudfront (CloudFront)
Request ID: TtGE8OD711qm0s6NPCNPl2ExUUJUa7l_J_-h5GDtPEWk4CFiWDkixg==
</PRE>
<ADDRESS>
</ADDRESS>
</BODY></HTML>

API是一个简单的GET API,例如

https://xxx.amazonaws.com/v1/session/verify_email_token?token=123456

我没有使用CloudFront,而是使用Https。

1 个答案:

答案 0 :(得分:1)

以下解决方案对我有用- 将API网关端点从边缘优化更改为区域优化。