PHP SLIM不接受点(.)在uri参数中

2022-06-13 00:00:00 php slim

我尝试使用SLIM构建一个亵渎过滤API。以下是该API的链接。

Link : http://www.employeeexperts.com/Profanity/index.php/rest/check/hello

在链接的末尾,我附加了单词‘Hello’以进行亵渎检查。到目前为止,它运行正常。但是,在添加任何点(.)的那一刻在Word末尾(例如:Hello..),Slim将控件重定向到索引页。

我的GET路由器代码如下所示..

$app->get('/service/:method/:str', function ($method, $str) use ($app) {    
     // Internal codes goes here
});

谁能帮我想出怎么才能阻止这种情况。

问候


解决方案

我也有这个问题,这是我的解决方案:

$app->get('/service/+args', function ($args) use ($app) {    
    $arguments = str_replace("/service/", $app->request->getPathInfo());
    $args = explode('/', $arguments);
    var_dump($args);
});

当我访问URL/service/foo/bar时,$args如下所示:

array(
    'foo',
    'bar',
)

另外,当我访问URL/service/foo/bar/baz/qux时,$args将如下所示:

array(
    'foo',
    'bar',
    'baz',
    'qux',
)

相关文章