有人有env变量问题吗?出于某种原因,每次使用帮助器都会env('VARIABLE')返回帮助器null.它出乎意料地发生了,我真的不知道原因.重新启动apache/IDE /计算机不起作用.
是否允许从@dataProviders测试方法返回对象?
public function iOsMessages()
{
return [
'update available' => [1, new UpToDateMessage(), 'pl'],
];
}
/**
* @test
* @dataProvider iOsMessages
*/
public function success_create_message_for_ios(int $appVersion, MobileMessage $message, string $locale)
{
(...)
Run Code Online (Sandbox Code Playgroud)
错误:
为 Tests\Tests\Mobile\Classes\AppVersionTest::success_create_message_for_ios 指定的数据提供程序无效。找不到类“Mobile\Classes\Messages\UpToDateMessage”
MobileMessage是一个接口,导入是正确的。
路线:
$app->get('/ip/{ip}', GeoIpController::class . '@show');
如何正确验证IP?我试图Request在show方法中注入对象,但无法解决此问题。我想坚持使用REST,所以使用URL参数对我来说不是解决方案。我将其用于API目的,因此将状态代码作为响应将是适当的。
也尝试过这种方式:
$app->bind('ip', function ($ip) {
$this->validate($ip, [
'ip' => 'required|ip',
]);
});
Run Code Online (Sandbox Code Playgroud)
编辑:下面的答案是正确的,我requests在文档中找到了更多有关的信息:
流明不支持表单请求。如果您想使用表单请求,则应使用完整的Laravel框架。
换句话说,您不能requests在流明的构造函数中使用通过注入自定义。
我用Lumen 5.4。
这是我的路线设置方式:
$app->get('/ip/{ip}', GeoIpController::class . '@show');
Run Code Online (Sandbox Code Playgroud)
该{ip}路线参数应该是一个IP地址,用它点。但是,当路径中包含点时,似乎存在问题。它返回404 not found错误。
我知道我可以将IP地址作为简单的GET请求参数传入,但希望IP成为URL的一部分并像路由参数一样进行处理。
出于测试目的,我使用php -S localhost:8080 -t public该应用程序。