在 Slim php 中使用 Request 实例获取参数

问题描述 投票:0回答:1

我正在尝试从 $request 中获取 $args,有什么方法可以做到这一点,如果可以的话怎么做, 这是我正在做的事情的示例:

class JwtMiddleware
{

    public function __construct($settings)
    {

    }

    public function __invoke(Request $request, RequestHandler $handler)
    {
        $route = $request->getAttribute('route');
        $id = $route->getArgument('user_id');
        // this doesn't work

        /*
         //
         code 
         //
        */

    }
}

提前谢谢你

php slim
1个回答
0
投票

这取决于您如何通过 http 请求发送数据。有多种不同技术的常见方法可以获取您的数据。

  1. 通过 GET 方法 您可以在您的网址内发送数据。然后您可以通过以下函数调用接收它们:

    $data = $request->getAttribute('name_of_argument');

  2. 通过 POST 和 PUT 方法 您还可以在 http 正文中以 json 形式传输数据。然后您可以通过以下方式接收您的数据:

    $data = json_decode($request->getBody(), true);

但是,数据也可以作为简单属性发送,例如在 POST 方法中。因此,您可以使用以下代码来获取您的数据:

$data = $request->getParsedBody();

请举手使用 Slim!

© www.soinside.com 2019 - 2024. All rights reserved.