API Gateway中,测试调用和常规调用之间有什么区别?

0

【以下的问题经过翻译处理】 你好,

当我在API Gateway中使用“Method Test”工具调用我的GET URL时,我可以看到正确的参数被传递到我的Lambda函数中。

但是,如果我以任何其他方式调用它(如curl、postman、浏览器等),那么我的Lambda函数会失败,因为请求中的参数没有传递到Lambda中。

我需要设置一些特殊的HTTP头吗?我已经尝试了发送以下内容:

Content-Type:application/json
Accept:application/json

但没有成功。

如果需要,这是我的映射模板:

{
    "pid" : "$input.params('pid')",
    "uid" : "$input.params('uid')",
    "category" : "$input.params('cat')",
    "limit" : "$input.params('l')",
    "filter" : "$input.params('f')",
    "slug" : "$input.params('slug')"
}

profile picture
EXPERTE
gefragt vor 6 Monaten18 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 你在尝试从浏览器/Postman中调用时收到了什么错误?我尝试复制你的问题,但是在我的环境中,你的映射模板运行正常。我尝试使用GET方法执行测试、Chrome浏览器和Postman,都成功了。我的调用看起来像这样:

https://xxxxxxxx.execute-api.us-east-1.amazonaws.com/prod?pid=mypid&uid=myuid&cat=dog&l=med&f=dud&slug=yellow

你是否记得在URL中包含“阶段”名称?

你是否记得“部署”你最新版本的API?

-randy

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen