我看到这个问题有几个答案,有人说可以做到,有人说可以做(但这是一个坏主意),有人说不。
我有以下路由器注释和动作函数/方法:
/**
* @Route( "/ctlr/manageAccount/{action}/{username}/{loginDateTime}/{code}/{password}",
* requirements={ "action" = "activate|unlock|passwordReset|changePassword|action",
* "username" = ".*",
* "loginDateTime" = ".*",
* "code" = "[\d\w]*",
* "password" = "[^\s]*" } )
*/
public function manageAccountAction( $action, $username,
$loginDateTime='', $code=FALSE,
$password='' ) { ... }
manageAccoungAction函数/方法中大约80%的代码对于所有操作都是相同的,其中参数的用法如下:
最后三个参数不会用于所有$action值,因此这些值被声明为可选的。
如何为$action的每个操作创建路由规则?
(r)=必需;(o)=可选
我如何为上述条件定义路线规则?
请注意,对于上面@Route语句中显示的Route规则,$username包含用户名和一个尾随斜杠 (/), $loginDateTime为",$code为false,$pass为"当用户未登录时。
当用户未登录时,$username将包含用户名、斜杠和应$loginDateTime的数字字符串,$loginDateTime仍为“”,$code为 false,$password为“”。
显然,斜杠不用于分隔和分配 URL 中的值:
/ctlr/manageAccountAction/activate/USERNAME//12345
/ctlr/manageAccountAction/unlock/USERNAME//12345
/ctlr/manageAccountAction/passwordReset/USERNAME//12345/NEWPASSWORD
/ctlr/manageAccountAction/changePassword/USERNAME/76543//NEWPASSWORD
其中USERNAME代表用户的实际用户名,123456\是用户帐户数据的备用密钥,NEWPASSWORD是用户的新密码,76543是登录日期时间。
谢谢你。
有两件事需要更改。首先,将用户名的要求从:
* "username" = ".*",
自:
* "username" = "[a-z0-9]*",
似乎URL中的斜线(/)解析不是首先执行的,而是在需求检查的同时或之后执行的,因此用户名和下一个值之间的斜线没有像预期的那样工作,因为斜线和下一个值没有与用户名分开,而是一起运行。
另一件事是从URL和路由规则中提取登录日期和时间密码值。这是因为值和规则,这些值及其函数参数是用户实际登录时使用的唯一值。这意味着,如果它们与其他操作一起保留,则URL将具有两个连续的斜杠,我不认为可以正确解析。最好将使用这些值和函数参数的更改密码操作放在新函数中。
在我的存储区被调度之后,我调用,它将我发送到正确的视图,但我无法访问查询参数。我的其余代码可以在https://github.com/crh225/hotreactasp/tree/master/src/hotreactasp/content找到,谢谢!
本文向大家介绍JS中使用apply方法通过不同数量的参数调用函数的方法,包括了JS中使用apply方法通过不同数量的参数调用函数的方法的使用技巧和注意事项,需要的朋友参考一下 apply()方法定义 函数的apply()方法和call方法作用相同,区别在于接收的参数的方式不同。 apply()方法接收两个参数,一个是对象,一个是参数数组。 apply()作用 1、用于延长函数的作用域 示例: 这里
Swagger用相同的路径和方法但不同的参数覆盖方法 我有一个带有Spring Boot 2.3.5.RELEASE,webflux和springfox 3.0.0的应用程序。我开发了两个具有相同路径但参数不同的GET方法,一个不接收参数并返回list,另一个返回findAll。 情况是,Swagger只生成其中一种方法的文档,有时是列表,有时是分页。我怎么能告诉swagger他们是不同的方法,并
B类: 如何影响这个界面?
当我多次调用同一个函数时,每次都传递了不同的参数,我会这样做: 有没有更方便的方法做到这一点呢?
我想为同一个GET路径提供多个函数。 我也希望我的网络服务“找到”这些函数,当且仅当查询参数与URL字符串中的参数匹配时。 例如: 我有 对于该路径,我希望有2个功能: 和 现在我得到一个错误: 严重:在资源和/或提供程序类中检测到以下错误和警告:严重:产生媒体类型冲突。资源方法public javax . ws . RS . core . response 所以首先:有什么方法可以实现我在这里想