In a controller action we can get the request object in 2 ways:
$request = $this->getRequest();
or by passing it as a parameter to an action
public function testAction(Request $request)
What is the difference between them? Is a recommended way to get the request or specific situations when each is preferred?