3

我想建立一个自定义路径,然后在该路径下载一个文件。例如,

        warp::path!("files" / u32)
            .map(|fileId| {
                format!("{}.txt", *FILES_PATH, fileId)
            })
            .and(warp::fs::file)

但我收到如下错误:

the trait bound 'fn(_) -> 
    impl warp::filter::FilterClone {
      warp::filters::fs::file::<_>
    }: warp::filter::FilterBase' is not satisfied

我错过了一个简单的方法可以做到这一点吗?

4

1 回答 1

3

在warp中,过滤器不能动态生成,必须在程序启动时创建。有一个拉取请求来支持这一点,但它已经有一段时间没有看到活动了。

您最好的选择是复制Warp 的文件路径实现- 它使用 Warp 内部代码,因此您必须定义自己的错误和拒绝类型,但这并不太难。

于 2020-10-30T07:25:23.837 回答