Rust 无法提供静态文件

Rust 无法提供静态文件,rust,actix-web,Rust,Actix Web,由于任务是分发图片-我遵循下一个指南: 例如,我在项目中创建了一个目录(static),并向其中上载了一个图像: 然后我编写以下代码: (请注意带有注释的行(只有两行)://摘自指南) 使用actix_cors::cors; 使用actix_web::{http,web,get,post,App,HttpResponse,HttpServer,Result}; 使用serde::{反序列化,序列化}; 使用actix_文件::文件;//摘自指南 #[派生(序列化、反序列化)] 结构MyObj

由于任务是分发图片-我遵循下一个指南:


例如,我在项目中创建了一个目录(
static
),并向其中上载了一个图像:

然后我编写以下代码:
(请注意带有注释的行(只有两行):
//摘自指南

使用actix_cors::cors;
使用actix_web::{http,web,get,post,App,HttpResponse,HttpServer,Result};
使用serde::{反序列化,序列化};
使用actix_文件::文件;//摘自指南
#[派生(序列化、反序列化)]
结构MyObj{
名称:String,
}
#[派生(序列化、反序列化、克隆)]
结构MyParams{
傅:选择,
}
#[派生(序列化、反序列化)]
结构MyResponseObj{
名称:String,
参数:MyParams,
}
#[获取(“/{name}”)]
异步fn index_get(路径:web::path,参数:web::Query)->Result{
Ok(HttpResponse::Ok().json(MyResponseObj{
名称:path.name.to_string(),
params:params.clone(),
}))
}
#[职位(“/{name}”)]
异步fn index_post(路径:web::path,参数:web::Json)->Result{
你好()等待;
println!(“{:?}”,params.foo);
println!(“{:?}”,path.name);
Ok(HttpResponse::Ok().json(MyResponseObj{
名称:path.name.to_string(),
params:params.clone(),
}))
}
#[actix_rt::main]
异步fn main()->std::io::Result{
HttpServer::new(| | App::new()
.包裹(
Cors::new()//问题已解决:

.service(Files::new("/static", std::path::Path::new(env!("CARGO_MANIFEST_DIR")).join("static")))

错误表明它不是有效的图像,但它实际发送了什么数据?这种情况下不需要数据。我需要在浏览器中打开服务器中的图像。我需要什么?我了解您想要什么。服务器发送了什么?我需要知道,以便更好地了解您遇到的问题。
[package]
name = "hello_world"
version = "0.1.0"
authors = ["Mike_Kharkov <yamaradg@gmail.com>"]
edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
actix-web = "3.0.1"
actix-rt = "1.1.1"
actix-cors = "0.3.0"
actix-files = "0.3.0"
postgres = "0.17.5"
serde = { version = "1.0.116", features = ["derive"] }
serde_json = "1.0"
json = "0.12"
tokio-postgres = "0.5.5"
tokio = "0.2.22"
env_logger = "0.7.1"
.service(Files::new("/static", std::path::Path::new(env!("CARGO_MANIFEST_DIR")).join("static")))