Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asynchronous 是否有一种等待返回结果而不是T的方法?_Asynchronous_Rust_Async Await - Fatal编程技术网

Asynchronous 是否有一种等待返回结果而不是T的方法?

Asynchronous 是否有一种等待返回结果而不是T的方法?,asynchronous,rust,async-await,Asynchronous,Rust,Async Await,我正在使用reqwest使用函数对API发出get请求: async fn get_item_response(client: &Client, id: &str) -> Result<Response, reqwest::Error> { let base = "http://someurl.com/item?={item_id}" .replace("{item_id}", id); client.get(&base).sen

我正在使用reqwest使用函数对API发出get请求:

async fn get_item_response(client: &Client, id: &str) -> Result<Response, reqwest::Error> {
    let base = "http://someurl.com/item?={item_id}"
    .replace("{item_id}", id);
    client.get(&base).send()
}
响应是一种响应类型,而不是结果,这意味着我无法检查是否发生了错误而不惊慌。 是否有方法访问结果?

该结果?不是等待的组成部分。它是一个运算符本身,它将展开有效值或返回错误值,并将它们传播到调用函数。如果没有它,您必须自己检查结果:

匹配获取项目响应和客户端,1.等待{ Okresponse=>/*使用response*/*执行操作, Erre=>/*处理错误*/,, } 那个?不是等待的组成部分。它是一个运算符本身,它将展开有效值或返回错误值,并将它们传播到调用函数。如果没有它,您必须自己检查结果:

匹配获取项目响应和客户端,1.等待{ Okresponse=>/*使用response*/*执行操作, Erre=>/*处理错误*/,, }
async fn main() -> Result<(), Box<dyn Error>> {
    let client = Client::new();
    let response = get_item_response(&client, "1").await?;
}