codenameone POST请求BODY

时间:2016-11-11 23:21:59

标签: java rest netbeans codenameone

我正在使用CodenameOne向REST API发送POST请求。 它与GET完美配合,因为我不必传递带有消息的BODY。 请有人告诉我如何通过我的帖子传递一个BODY?

以下是我用来连接的代码......

    try {
        ConnectionRequest connReq = new ConnectionRequest();

        connReq.setPost(true);
        connReq.addRequestHeader("Authorization", "54321);
        connReq.addRequestHeader("client_id","12345");
        connReq.addRequestHeader("Content-Type","application/json");
        connReq.setUrl("https://myapi.com/connect");
        connReq.setHttpMethod("POST");
        NetworkManager.getInstance().addToQueueAndWait(connReq);
        Map<String,Object> result = new JSONParser().parseJSON(new InputStreamReader(new ByteArrayInputStream(connReq.getResponseData()), "UTF-8"));
        return result; 
    }
    catch(Exception err) {
        System.err.println(err);
        return null;
    }   

我在这里找到了一些文件 - 但我不太明白他们在告诉我什么......

https://www.codenameone.com/javadoc/com/codename1/io/ConnectionRequest.html#buildRequestBody-java.io.OutputStream-

由于

1 个答案:

答案 0 :(得分:2)

如果您想要一个标准的“FORM”样式帖子,如果您在HTML表单中有字段,那么就像使用addArgument一样使用GET。它可以与POST一起使用。

如果您想对您的身体进行“硬编码”,例如一些web服务期望JSON成为请求的主体,只需将其写入您找到的buildRequestBody方法的输出流中。