如何在Corda中下载jar文件?

时间:2018-07-02 06:30:09

标签: corda

我已经在一个节点上上传了一个jar文件。 如何下载附件。 下载附件时,我是否可以将附件保存在jar文件中?用户界面中将有一个下载按钮,单击附件后需要下载。在用户界面中,我将提供文件的哈希值。

1 个答案:

答案 0 :(得分:0)

您使用CordaRPCOps.openAttachment()方法。它将附件的哈希作为输入,并返回附件JAR的InputStream

这是一个简单的端点,可以下载附件作为输入流:

@GET
@Path("download-attachment")
fun downloadAttachment(@QueryParam("attachment_hash") attachmentHash: String): InputStream {
    val secureHash = SecureHash.parse(attachmentHash)
    return rpcOps.openAttachment(secureHash)
}

然后,您需要将输入流写为JAR文件。这是一个简单的帮助程序功能:

fun downloadJar(url: String) {
    val inputStream = URL(url).openStream()

    BufferedReader(InputStreamReader(inputStream)).use {
        File("./downloaded_jar.jar").outputStream().use { outputStream ->
            inputStream.copyTo(outputStream)
        }
    }
}