我有兴趣在avro/bytes
请求中将POST
(原始字节)发送到服务器。在手动编码我自己的任何内容之前我想查看一些现成的示例但尚未发现..任何人都有任何关于如何将avro/bytes
编码POST
请求正文发送到服务器的示例? (字节编码为avro/bytes
但不是base64
等)
答案 0 :(得分:0)
将您的对象转换为avro然后转换为字节,然后您可以使用这个简单的方法(使用apache httpcore)来获取响应(此方法假定服务器响应带有json字符串)
public static String postJSON(String uri, byte[] req) {
String queryResponse = null;
try {
List<Header> httpHeaders = new ArrayList<Header>();
httpHeaders.add(HttpClientUtil.ACCEPT_TEXT_HTML);
HttpResponse response = HttpClientUtil.post(uri, req, ContentType.DEFAULT_BINARY, httpHeaders);
HttpEntity entity = response.getEntity();
queryResponse = EntityUtils.toString(entity);
} catch (ClientProtocolException e) {
logger.log(java.util.logging.Level.SEVERE, e.getMessage(), e);
} catch (IOException e) {
logger.log(java.util.logging.Level.SEVERE, e.getMessage(), e);
}
return queryResponse;
}