路由参数是URL编码的

时间:2015-09-02 19:32:14

标签: php lumen

我正在尝试流明,我写了第一条路线:

$app->get('hello/{name}', function ($name) {
    return "Hello, $name!";
});

到目前为止我读过的文档并没有说明框架如何处理HTML注入,所以我做了一个快速测试:

http://example.com/hello/<u>café

...出现如下:

Hello, %3Cu%3Ecaf%C3%A9!

换句话说,当路由参数到达我的函数时,它们不会被URL解码。其他框架我试过为你解码一切,就像你在阅读$_GET

我的设置是否存在问题(Apache / 2.4,mod_php和mod_rewrite与框架捆绑在一起的默认.htaccess)或者是预期的输入?

1 个答案:

答案 0 :(得分:0)

这是故意的错误/功能(请参阅Route parameters are URL-encoded #238以供参考)。不知道设计决策背后的基本原理。