我是新来的,一般舞者框架和Web应用程序。 我有,我有一个接受多个参数路线的舞者项目。 到目前为止,无汗。 然而,如果一个参数有那么路径未找到文件路径为它的价值。
我曾尝试编码参数字符串如下消除斜线:
$paramString =~ s/\//%2F/g;
这确实编码为预期的(我把它打印出来的日志中,以确保)的斜线。
然而,参数字符串被附加到基URI我感兴趣的路线之后,URI表明了在未编码的形式浏览器,404引发错误和日志说,未编码的路线不能被发现。
我看着Request.pm模块,发现在init方法被称为所谓的_url_decode私有方法,去除编码。 有没有一种方式,当不希望它来禁用此?
我使用uri_for方法来创建URI也试过。 在这种情况下,编码URI并在浏览器中显示出来,但是,路线仍然没有找到和日志指出未编码的形式(使用正斜杠)被用于搜索路线
Trying to match 'GET /exome_proj_config/project_type=exome&project_root=/usr/local/projects/users/pdagosto/projects&analysis_project_name=Test' against /^\/exome_proj_config\/([^\/]+)$/ (generated from '/exome_proj_config/:project_type:project_root:analysis_project_name') in /home/pdagosto/perl5/lib/perl5/Dancer/Route.pm l. 84 here
由于用于匹配正则表达式显然是找不遵循一个在基础URI的末尾任何斜杠字符串很明显,该路线将永远不会被发现。
有没有办法有一个包含路径或必须使用一些其他的方法一个URI参数?