corda - 如何让我的 cordapp 可以通过网络访问?
问题描述
我想让我的 CordApp 可以通过 web 访问。最好的方法是什么。目前我正在通过终端使用我的 Cordapp。
实现我的目标的最佳方式是什么?
使用 corda-webserver 会对我有帮助吗?如何使用corda-webserver.jar?我们是创建它还是得到一个模板?
解决方案
请按照这个创建 SpringBoot 网络服务器的示例进行操作。您可以通过您定义的 RPC 连接调用您的流程或查询保管库。
- 该示例来自 Java 和 Kotlin。
- 定义您的服务器将使用 的RPC 连接。
- 定义SpringBoot 应用程序(即您的网络服务器)。
- 定义一个将公开您的 API 的控制器。
- 定义一个gradle 任务来启动你的网络服务器。
下面是启动网络服务器的 Gradle 任务示例(阅读代码中的注释):
task runPartyAServer(type: JavaExec, dependsOn: assemble) {
classpath = sourceSets.main.runtimeClasspath
main = 'com.example.webserver.Server'
// The server port for PartyA is 10070, while for PartyB it's 10080,
// and so on... (you can basically choose any port number, usually it's 8080)
// Also, I only wrote one parameter `config.rpc.host`, but you need to
// supply all the parameters that your RPCConnection class is expecting (i.e
// config.rpc.username, config.rpc.password, config.rpc.port).
args '--server.port=10070', '--config.rpc.host=localhost', etc....
}
task runPartyBServer(type: JavaExec, dependsOn: assemble) {
classpath = sourceSets.main.runtimeClasspath
main = 'com.example.webserver.Server'
args '--server.port=10080', '--config.rpc.host=localhost', etc....
}
推荐阅读
- perl - 通过 STDIN 重定向的输入未按预期运行
- php - While 循环导致 500 内部服务器错误
- git - spring cloud config clone-on-start http.postBuffer问题
- r - 如果字符串中间存在“=”(等号)符号,则删除引号。正则表达式
- javascript - 编写一个接受测试分数数组作为参数的函数,然后该函数应该返回 80 或更高的分数?
- scala - 使用 flatMap 调用地图(对于 Option 数据类型)但类型在 scala 中不匹配
- python-3.x - Tkinter,单击时将其他文本框滚动到文本框 1 中包含的文本。没有标签绑定可以吗?
- django-views - Django响应有时是空白的
- php - 表排序器在行单击时打开子行
- tsql - 这些连接有什么区别?