首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过API与CorDapp接口的推荐方法是什么?

通过API与CorDapp接口的推荐方法是什么?
EN

Stack Overflow用户
提问于 2020-01-23 18:47:18
回答 1查看 319关注 0票数 0

我正在设计一个CorDapp,它需要用户输入和API集成,我正在考虑向外部世界公开流和库查询的各种方法。

默认选项似乎是使用Corda。除非我遗漏了一些东西,否则只有Java绑定,这实际上限制了客户机只基于JVM。这有点不方便,而且理想情况下,我希望像OpenAPI这样的东西可以使它更加开放,并且与实现无关。

另一种选择是使用某种Corda到OpenAPI代理。我知道辫子的事,我肯定还有其他的。Braid似乎支持将Corda服务与流打包到CorDapp本身,从而有效地将其嵌入到Corda中。

Braid也可以作为独立的代理来部署,我认为这是选项三。

我本能地发现嵌入式模式更有吸引力,因为它减少了移动部件的数量,而不是独立的模式。然而,我担心这样的模型可能会在某一时刻变得不受欢迎,这要么是因为code开发人员认为它是对服务设施的滥用,要么是因为一些组织不会热衷于将这样的代码部署到他们的节点上,特别是当它们可能运行多个CorDapps时。我可以想象,作为Corda的一部分部署的任何东西至少都需要更多的检查,因为这可能会影响到运行在那里的其他东西,而这反过来又会降低灵活性。

我想知道实际上推荐用什么方法与CorDapp集成?

编辑1:我知道技术上可以将一个4.3服务器嵌入到节点中,并从那里公开一个REST,至少在当前版本的Corda中是这样的(在编写本报告时为4.3)。问题更多的是,这样做是否是一个好主意,以及为什么。

EN

回答 1

Stack Overflow用户

发布于 2020-01-24 08:48:10

看看我在Stackoverflow上提出的关于CordApp前端的问题。这可能会有帮助。

以下是链接-

"Corda: Can we develop Dapps that will be run by IIS webserver to talk to Corda platform?

你可以使用任何前端技术。

从Corda 3开始,后端必须是基于JVM的,原因有两个:

  • 您需要将各种流、状态和其他类定义加载到类路径以作为参数传递给流、从保险库检索对象等。
  • 您需要使用CordaRPCClient库来创建到节点

的RPC连接。

如果您真的需要用另一种语言编写后端,那么有几个解决办法:

  • 创建一个位于主the服务器和节点之间的瘦Java服务器。Java将来自主and服务器的HTTP请求转换为对节点的RPC调用,将来自该节点的RPC响应转换为对主webserver

的HTTP响应。

代码语言:javascript
复制
- This is the approach taken   by libraries such as Braid 

  • 使用GraalVM等库将非JVM语言编译为JVM字节码

代码语言:javascript
复制
- An example of writing a JVM   webserver in Javascript using GraalVM is available here:   [https://github.com/nitesh7sid/cordapp-example-nodejs-server-graalvm](https://github.com/nitesh7sid/cordapp-example-nodejs-server-graalvm)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59885289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档