Regex 资源正则表达式引起恐慌 这段代码试图用一个用rust编写的服务替换一个已经在生产环境中运行的服务(用java编写) 此服务将作为redis集群的侧车代理,公开api rest。它需要保持与当前api的兼容性

Regex 资源正则表达式引起恐慌 这段代码试图用一个用rust编写的服务替换一个已经在生产环境中运行的服务(用java编写) 此服务将作为redis集群的侧车代理,公开api rest。它需要保持与当前api的兼容性,regex,rust,actix-web,Regex,Rust,Actix Web,路线是: "/api/keys/{path:*}" 在路径中,我们可以为redis设置密钥的de名称,并且可以包含以下任何格式: /api/keys/users/41728391 /api/keys/users/1000/followers /api/keys/users/{1234}/data 这是我的尝试 HttpServer::new(move || App::new() .data(redis_config) .service(

路线是:

"/api/keys/{path:*}" 
在路径中,我们可以为redis设置密钥的de名称,并且可以包含以下任何格式:

/api/keys/users/41728391
/api/keys/users/1000/followers
/api/keys/users/{1234}/data
这是我的尝试

 HttpServer::new(move || App::new()
        .data(redis_config)
        .service(
            web::resource("/set/{path:*}").route(web::put().to(set_key))
        ) ).bind(("127.0.0.1", 8080))?
        .run()
        .await
我也试过这样:

#[get("/set/{path:*}")]...
但在两种情况下,我得到了这个错误:

  .service(web::resource("/set/{path:*}").route(web::put().to(path_regex)))
   |                                                                         ^^^^^^^^^^ the trait `Factory<_, _, _>` is not implemented for `path_regex`



thread 'thread 'actix-rt:worker:1actix-rt:worker:0' panicked at '' panicked at 'Wrong path pattern: "/set/{path:*}" regex parse error:
    ^/set/(?P<path>*)$
                   ^
error: repetition operator missing expressionWrong path pattern: "/set/{path:*}" regex parse error:
    ^/set/(?P<path>*)$
               ^
.service(web::resource(“/set/{path:}”).route(web::put().to(path_regex)))
|^^^^^^^^^^^^^未为'path'正则表达式实现特性'Factory'`
线程“thread”actix rt:worker:1actix rt:worker:0“在“”处惊慌失措”错误路径模式:“/set/{path:}”正则表达式分析错误:
^/集合/(?P*)$
^
错误:重复运算符缺少表达式错误路径模式:“/set/{path:*}”正则表达式分析错误:
^/集合/(?P*)$
^
我读过这本书


我的代码是:

无论您使用什么,都会向您暴露一个泄漏的抽象。但是错误信息会告诉你出了什么问题。您的
*
未应用于任何正则表达式子表达式。这是正则表达式,不是glob。请改为尝试
*
*
不是有效的正则表达式。你的意思可能是
*
。说实话,在我读了这里之后,我又去检查了java服务中有效的正则表达式,我发现我忘记了dot kkk