8得票2回答
如何使用multipart/form-data和hyper发布图片?

我正在尝试使用超文本传输协议(HTTP)来上传图片文件,类似于cURL的方式: curl -F smfile=@11.jpg https://httpbin.org/post --trace-ascii - 结果如下: { "args": {}, "data": "", "...

8得票2回答
`RefCell<std::string::String>` 不能在多线程之间安全地共享?

这是如何在Rust中从外部作用域中重复使用值进入闭包的延续,为了更好地展示,新开了一个问题。 // main.rs // The value will be modified eventually inside `main` // and a http request s...

7得票1回答
如何使Axum路由器处理返回不同的Content-Type响应?

例如,当用户访问http://127.0.0.1:8080/hello时,如果查询参数id为1,则返回一个纯文本响应。如果id为2,则返回一个json结构。 总结: | id(输入) | 状态码 | 内容类型 | 响应体 | | --- | --- | --- | --- | | 1 | ...

7得票1回答
Hyper中的共享可变状态

我正在尝试在Hyper Web服务器中创建一个计数器来计算它接收到的请求总数。我使用一个 Arc&lt;Mutex&lt;u64&gt;&gt;来存储计数。然而,我还没有找到合适的 move 和 .clone() 的组合来满足闭包的类型。这里有一些代码可以编译,但会在每次请求时重置计数器: ...

7得票1回答
如何在Hyper处理程序之间共享HashMap?

我正在尝试使用Hyper 0.10实现一个简单的内存URL缩短器,以学习Rust。我遇到了一个问题,我认为是由于在处理程序中尝试关闭可变HashMap引起的: fn post(mut req: Request, mut res: Response, short_uris: &amp;mut ...

7得票1回答
如何将超文本响应主体写入文件?

我正在尝试使用tokio编写一个测试程序,从网站抓取文件并将流式响应写入文件。Hyper网站提供的示例使用while循环和.data()方法来处理响应主体,但我想使用.map()和其他几种方式来操作流。 我认为下一个合理的尝试是使用TryStreamExt中的.into_async_read(...

7得票1回答
将额外的状态传递给 Rust `hyper::service::service_fn`

我在将额外状态传递到我的服务函数时遇到了困难,但我无法解决闭包中的生命周期问题。没有任何教程提到过这个问题。 https://hyper.rs/ https://docs.rs/hyper/0.13.4/hyper/server/index.html https://docs.rs/hy...

7得票1回答
从Hyper收到请求后,解析JSON并将其转换为Rust中的结构体

我将尝试制作一个Web服务器,接收一些JSON参数,并将它们转换为结构体,然后将其存储在我的应用程序的其他位置。 我有一个名为status.rs的文件中包含这个数据结构。 use serde::{Serialize, Deserialize}; #[derive(Debug, Clone...