直接添加/更新资产与通过事务添加/更新资产之间的区别是什么。哪种方法正确?
我们可以使用API添加/更新资产,然后我们为什么要对资产进行交易?这是一个日志/跟踪来跟踪资产更新的内容和时间吗?如果我直接更改资产而没有任何交易条目怎么办?或者我应该通过资产交易进行变更?
例如:
asset Myasset identified by asset_id {
o String asset_id
--> User admin
o String firstname
o String lastname
o Boolean status default=true
}
transaction UpdateMyasset {
o Myasset certificate
o Boolean status default=true
}
那么我应该使用UpdateMyasset来创建资产还是直接使用Myasset?我什么时候应该使用交易?
这实际上是一个非常好的问题。
你是对的,有两种方法来创建/更新资产,这部分从来没有和我坐在一起。默认情况下,API为您提供创建/更新资产的端点。
在我看来这是一个问题,因为它绕过了你可能拥有的任何类型的业务规则。但是,可以通过事务指定和应用这些规则。此时,您可以检查资产,确保一切正常,如果满足所有业务规则,则可以创建/更新资产。
我认为应该在一个严肃的非POC应用程序中完成的是完全禁用资产端点,仅通过事务创建/更新资产,并且只有在应用业务规则并正确验证资产后才能创建/更新资产。