Symfony请求参数:createFromGlobals与注入请求
我已经分配了一个项目,在一个控制器操作中,Symfony请求参数:createFromGlobals与注入请求,symfony,Symfony,我已经分配了一个项目,在一个控制器操作中,$request变量由以下内容填充: $request=request::createFromGlobals() 后跟正在查找的实际值: $token=$request->get(“访问令牌”) 但是,在为此编写测试用例时(以前没有): $request->get(“访问令牌”)返回null。相反,当我将其更改为将请求注入操作validateTokenAction(Request$Request)时,它工作正常并返回实际值 在线查找()看起来像是Requ
$request
变量由以下内容填充:
$request=request::createFromGlobals()代码>
后跟正在查找的实际值:
$token=$request->get(“访问令牌”)代码>
但是,在为此编写测试用例时(以前没有):
$request->get(“访问令牌”)
返回null
。相反,当我将其更改为将请求注入操作validateTokenAction(Request$Request)
时,它工作正常并返回实际值
在线查找()看起来像是Request::createFromGlobals
应该可以用来获取传递的参数。那为什么不呢?这两种方法之间有区别吗
另外,应用程序的实际功能(令牌验证等)运行良好;这似乎只发生在测试用例中。有时,即使是公认的答案也不正确。在symfony应用程序的上下文中,我想不出在app.php之外使用Request::createFromGlobals()的任何有效理由。您可以深入研究代码,了解测试用例不工作的原因。如果您打算长期使用symfony框架,那么这样做是值得的。有时,即使是公认的答案也是不正确的。在symfony应用程序的上下文中,我想不出在app.php之外使用Request::createFromGlobals()的任何有效理由。您可以深入研究代码,了解测试用例不工作的原因。如果您打算长期使用symfony框架,那么这样做实际上是值得的。
$client = static::createClient();
$client->request(
'GET',
'/validate',
[
'access_token' => $responseData['access_token']
]
);