如何仅在多个值中获取 JSON 对象的值以显示,而不是在 api 方法 corda 中显示所有 stateandref 详细信息
how to get values of JSON object only among multiple values to display instead of displaying all stateandref details in api method corda
我正在尝试使用 @GET @Produces api method.but 在 StateandRef 的多个值中仅显示 JSON 对象值 method.but 无法从中检索特定值。请帮帮我。
这里有一个 IOUState
的例子。我们将保险库中的每个 IOUState
映射到一个简单数据 class 的实例,然后我们将其 return 作为 JSON.
IOUStateData
数据class
data class IOUStateData(
val value: Int,
val lender: Party,
val borrower: Party
)
端点
@GET
@Path("ious")
@Produces(MediaType.APPLICATION_JSON)
fun getIOUs(): Map<String, List<IOUStateData>> {
// Extract the IOUState StateAndRefs from the vault.
val iouStateAndRefs = rpcOps.vaultQueryBy<IOUState>().states
// Map each StateAndRef to its IOUState.
val iouStates = iouStateAndRefs.map { it.state.data }
// Map each IOUState to a data class that will be returned as JSON.
val iouStateDatas = iouStates.map { iouState ->
IOUStateData(iouState.value, iouState.lender, iouState.borrower)
}
return mapOf("iouStates" to iouStateDatas)
}
我正在尝试使用 @GET @Produces api method.but 在 StateandRef 的多个值中仅显示 JSON 对象值 method.but 无法从中检索特定值。请帮帮我。
这里有一个 IOUState
的例子。我们将保险库中的每个 IOUState
映射到一个简单数据 class 的实例,然后我们将其 return 作为 JSON.
IOUStateData
数据class
data class IOUStateData(
val value: Int,
val lender: Party,
val borrower: Party
)
端点
@GET
@Path("ious")
@Produces(MediaType.APPLICATION_JSON)
fun getIOUs(): Map<String, List<IOUStateData>> {
// Extract the IOUState StateAndRefs from the vault.
val iouStateAndRefs = rpcOps.vaultQueryBy<IOUState>().states
// Map each StateAndRef to its IOUState.
val iouStates = iouStateAndRefs.map { it.state.data }
// Map each IOUState to a data class that will be returned as JSON.
val iouStateDatas = iouStates.map { iouState ->
IOUStateData(iouState.value, iouState.lender, iouState.borrower)
}
return mapOf("iouStates" to iouStateDatas)
}