You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman正常但HTTPie调用AWS APIGateway返回307临时重定向

解决HTTPie调用AWS API Gateway返回307 Temporary Redirect的问题

看起来你遇到的问题很典型——Postman能正常请求,但HTTPie返回307重定向,大概率是请求URL的格式或者HTTPie的参数传递方式有问题,我来帮你一步步排查:

1. 检查API Gateway URL是否包含阶段名称

AWS API Gateway的正式URL必须包含部署阶段名称(比如prod、dev这类你在部署时设置的阶段),标准格式应该是:

{userid}.execute-api.ap-southeast-2.amazonaws.com/{stage}/sqstest/message

你当前的命令里漏掉了阶段名称,而Postman能正常工作,很可能是Postman的请求URL已经包含了这个阶段。比如如果你的部署阶段是prod,修改后的命令应该是:

http POST {userid}.execute-api.ap-southeast-2.amazonaws.com/prod/sqstest/message name=john

2. 让HTTPie自动跟随重定向(临时 workaround)

如果确实是重定向问题,你可以先通过参数让HTTPie自动跳转,加上--follow(或简写-f)参数:

http -f POST {userid}.execute-api.ap-southeast-2.amazonaws.com/sqstest/message name=john

不过这只是临时解决办法,最好还是补全阶段名称从根源解决,避免不必要的网络跳转。

3. 对比Postman与HTTPie的请求头

Postman正常工作时,你可以查看它的请求头配置,然后在HTTPie里手动同步相同的请求头。比如如果Postman指定了Content-Type: application/json,可以这样写命令:

http POST {userid}.execute-api.ap-southeast-2.amazonaws.com/prod/sqstest/message Content-Type:application/json name=john

或者直接用JSON格式传递参数:

http POST {userid}.execute-api.ap-southeast-2.amazonaws.com/prod/sqstest/message '{"name": "john"}'

4. 验证API Gateway的部署配置

登录AWS控制台查看API Gateway的部署详情,确认你的API已经部署到对应阶段,且阶段的资源路径和你的请求路径完全匹配。

优先试试补全阶段名称的方案,这是这类问题最常见的诱因,如果还是不行,再对比请求头或者检查部署配置。

内容的提问来源于stack exchange,提问作者hogs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 04:03:34