使用二进制数据休息API GET响应



我正在研究Restful API,在内存中我们有一个Json-format对象,客户需要下载这个zip文件格式的Json对象。

现在我正在使用Vertx来实现这个GET响应,该响应需要返回ZIP格式的二进制数据,基本上看起来如下,

JsonObject jsonObject = new JsonObject();
jsonObject.put("a", "a1")
.put("b", "b1");

routingContext
.response()
.setStatusCode(200)
.putHeader("Content-Type", "application/zip")
.....
.....

我不知道如何用Vertx routingContext来实现它,有人能给我一些要点或示例代码来实现它吗?

我认为方法链中唯一缺少的项是最后一行:.end(...);

此方法被多次重载。对于上面的情况,该方法看起来像.end(Json.encode(jsonObject));,其中jsonObject转换为String。我认为这只是一个例子,因为它会返回zip文件,但不能用zip存档软件打开(因为它显然是一个JSON(。

end(...)方法也接受io.vertx.core.buffer.Buffer包中的Buffer,也许这就是您想要的——将您拥有的数据转换为Buffer并提供它。

相关内容

  • 没有找到相关文章

最新更新