【发布时间】:2017-04-15 06:35:04
【问题描述】:
我正在尝试从 AWS API Gateway 上的 REST API 调用 POST 方法。使用 curl(用于 POST)从命令行正确调用 API,使用 GET 浏览器正确调用 API,所以我知道它工作正常,但我似乎不能找到使用 ConnectionRequest 类在代号一上调用 POST 方法的正确方法,阅读文档 theres addArgument() 和 setRequestBody() 他们说,它们是排他性的,所以我都尝试了,但我的结果是:
- setRequestBody() :似乎它没有向请求发送任何内容,尝试发送我在 curl 上发送的相同 JSON requestBody,API 响应但 requestBody 是“未定义”(检查 AWS API Gateway 日志),也尝试过request.addRequestHeader("test", "test");同样,标头在 AWS 日志中是“未定义的”,但在命令行上调用 API 时会显示。
- addArgument():API 返回“400 bad request”。
我正在使用 request.setPost(true); 但也有 setHttpMethod(String value);所以我不确定我是否做得对。
调用 POST REST 并向其发送参数的正确方法是什么?有没有办法调试正在发送的请求?像打印等效的 CURL 调用或类似的东西?或者有什么方法可以直接在 CN1 上执行 CURL 请求?
【问题讨论】:
标签: java rest http mobile codenameone