首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用近json和近原语时修复“预期的enum QueryRequest,fix enum QueryRequest”?

如何在使用近json和近原语时修复“预期的enum QueryRequest,fix enum QueryRequest”?
EN

Stack Overflow用户
提问于 2022-09-24 16:40:42
回答 1查看 43关注 0票数 1

我试图使用近邻-rpc,当我构建RpcQueryRequest时,会得到与近原语类型相关的以下错误:

代码语言:javascript
复制
expected enum near_primitives::types::BlockReference, found enum BlockReference
expected enum near_primitives::views::QueryRequest, found enum QueryRequest

导入BlockReferenceQueryRequest枚举。下面是构建请求的代码:

代码语言:javascript
复制
use near_primitives::types::Finality::DoomSlug;
use near_primitives::types::BlockReference::Finality;
use near_primitives::views::QueryRequest::ViewAccount;

...

let request = ViewAccount {
    account_id: "address.near".parse().unwrap()
};

let block_reference = Finality(DoomSlug);

let status_request = RpcQueryRequest {
    block_reference,
    request
};

在创建status_request时,使用block_referencerequest变量在最后3行中生成错误。

下面是我在Cargo.toml中的依赖关系:

代码语言:javascript
复制
[dependencies]
near-jsonrpc-client = "0.3.0"
futures = "0.3.24"
tokio = { version = "1.21.1", features = ["full"] }
near-primitives = "0.15.0"

有什么办法解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-24 20:50:12

您使用的是近原语版本0.15,但近jsonrpc客户端版本0.3依赖于近原语版本0.12。这两个版本是不兼容的,所以使用一个版本的类型代替另一个版本是行不通的。

您应该降低对接近原语的依赖级别以匹配:

代码语言:javascript
复制
near-primitives = "0.12.0"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73838941

复制
相关文章

相似问题

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