Dart 如何使用RPC包处理从数据库读取的json数据
我尝试使用rpcdart包实现一个API 在我找到的所有示例中,响应都是手动生成的(即newresponse()…message=“hello”) 在我的例子中,我从mongodb读取JSON数据,并希望以最小的转换返回它们(基本上只选择外部属性) 方法架构的Dart 如何使用RPC包处理从数据库读取的json数据,dart,Dart,我尝试使用rpcdart包实现一个API 在我找到的所有示例中,响应都是手动生成的(即newresponse()…message=“hello”) 在我的例子中,我从mongodb读取JSON数据,并希望以最小的转换返回它们(基本上只选择外部属性) 方法架构的fromRequest可用于执行此操作: class QueryResult { //my props } @ApiMethod(path: "myMongoQuery") Future<List<Qu
fromRequest
可用于执行此操作:
class QueryResult {
//my props
}
@ApiMethod(path: "myMongoQuery")
Future<List<QueryResult>> myMongoQuery() async {
var schema = _server.apiMap["/query/v1"].schemaMap["QueryResult"];
var results = await coll.find();
return results.map(schema.fromRequest).toList();
}
类查询结果{
//我的道具
}
@ApiMethod(路径:“myMongoQuery”)
Future myMongoQuery()异步{
var schema=_server.apiMap[“/query/v1”].schemaMap[“QueryResult”];
var results=await coll.find();
返回results.map(schema.fromRequest.toList();
}
我的代码中的问题是第一行(\u server.apiMap[“/query/v1”].schemaMap[“QueryResult”]
)检索方法的模式纯粹是一种黑客行为
我尝试使用mirror以优雅/通用的方式检索模式,但没有成功
有人能帮我吗
干杯
Nicolas我找到了一种访问响应模式的简单方法:
var querySchema=new ApiParser().parseSchema(reflectClass(QueryResult),false)代码>