使用Slim框架HTTP路由处理复杂的GET参数


Handling complex GET parameters with Slim Framework HTTP routing

假设以下初始代码:

$app->get( '(/store(/:url)+)', function( $url = NULL ) use ( $app ) 
    {
        // Execute actions on $url
    });

以上内容适用于以下内容:

http://localhost/api/0001/store/url-data

但是对于

失败
http://localhost/api/0001/store/http%3A%2F%2Fexample.com%2FSomething
http://localhost/api/0001/store/http://example.com/Something
// and other variations

我希望传递一个完整编码的URI以在服务器端处理。我怎么能做到和斯利姆在一起?

指出:

其他类型的HTTP请求(POST, PUT)将无法解决此给定问题。

它可以通过重新格式化(序列化)URI在另一端解决,但我希望这是我最后的手段。

重要编辑-回答

所以原来上面是框架中的一个bug,目前正在测试中,希望能尽快修复并发布。我暂时解决了这个问题,在URI到达服务器端之前序列化它。

所以原来上面是框架中的一个bug,目前正在测试中,希望能尽快修复并发布。我暂时解决了这个问题,在URI到达服务器端之前序列化它。