Laravel 7.2 发布
Laravel 团队本周发布了 v7.2.0,支持HTTP客户端查询字符串,并为 SMTP
邮件驱动提供了一个新的超时配置选项。
让我们来看看有哪些新功能吧:
expectsConfirmation
测试方法
PendingCommand
类新增 expectsConfirmation()
方法用于测试 artisan
命令, 这个功能由 ShawnCZek 贡献。
$this->artisan('foo:bar')
->expectsConfirmation('Do you want to continue?', 'no')
->assertExitCode(1);
幕后会使用 expectsQuestion
确认断言, 但是想从测试中断言实际值, 上面的内容同样也是需要的:
$this->artisan('foo:bar')
->expectsConfirmation('Do you want to continue?', true)
->assertExitCode(1);
SMTP 邮件驱动超时配置
Markus Podar 为SMTP邮件驱动程序提供了 timeout
配置。 默认为 30
秒,如果需要调整,请以秒为单位自定义配置:
'timeout' => 60, // seconds
HTTP Client 支持查询字符串
Irfaq Syed 为 Laravel HTTP Client 提供了 query string
功能。这意味着你使用 Http::get()
时可以传递第二个参数:
下面是一个示例:
Http::get('https://example.com/get');
// URL: https://example.com/get
Http::get('https://example.com/get?abc=123');
// URL: https://example.com/get?abc=123
Http::get('https://example.com/get', ['foo' => 'bar']);
// URL: https://example.com/get?foo=bar
Http::get('https://example.com/get', 'foo=bar');
// URL: https://example.com/get?foo=bar
需要注意的是,将查询参数传递到 get()
会覆盖 URI 中已存在的所有参数, 所以你只能使用其中一个。您可以像 Pull Request #31996中介绍的 Guzzle 处理这种情况的方式来覆盖默认值。
您可以在 GitHub 查看新功能和更新的全部内容,以及 7.1.3 and 7.2.0 之间的区别。Laravel 7.x 的完整发行说明可以在最新的 v7 changelog中找到:
v7.2.0
新增
- 新增
Illuminate\Testing\PendingCommand::expectsConfirmation()
(#31965) - 允许配置 smtp 邮件驱动的超时时间 (#31973)
- 新增
Http client
查询字符串支持 (#31996)
修复
更改
- 修改
cookie
助手函数来匹配CookieFactory
(#31974) - 使用 RequestMakeCommand 发布 Request 模板 (#31962)
- 处理路由前缀优先级 (449c80)
- 确保 SqsQueue 队列仅添加一次后缀 (#31925)
- 在视图的组件标签闭合后添加空格 (#32005)
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
想知道 7.* 会是TLS版本;这样不需要关注太多
有点跟不上节奏,最大的项目现在还是5.2,都不敢升级。