Laravel 7.2 发布

Laravel

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)

修复

  • 新增缺少的 ramsey/uuid 依赖到 Illuminate/Queue/composer.json 中 (#31988)
  • 修复视图中组件属性的输出 (#31994)

更改

  • 修改 cookie 助手函数来匹配 CookieFactory (#31974)
  • 使用 RequestMakeCommand 发布 Request 模板 (#31962)
  • 处理路由前缀优先级 (449c80)
  • 确保 SqsQueue 队列仅添加一次后缀 (#31925)
  • 在视图的组件标签闭合后添加空格 (#32005)
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/laravel-7-2-0

译文地址:https://learnku.com/laravel/t/42242

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 2

想知道 7.* 会是TLS版本;这样不需要关注太多

4年前 评论
pigzzz 4年前

有点跟不上节奏,最大的项目现在还是5.2,都不敢升级。

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!