Laravel 5.8 新特性系列 —— 支持策略类自动解析功能

Laravel 作者 Taylor Otwell 在 Twitter 宣布,从 Laravel 5.8 开始,只要策略类和对应模型类在 Laravel 框架默认约定的位置,就可以自动解析,而不必在 AuthServiceProvider 类中显式注册: 如果你定义的模型类或策略类不在默认约定的目录下,可以通过 Gate 自定义用于「查找」策略类的策略猜测逻辑: Gate::guessP...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 响应类 Response 剖析

和 Laravel 请求对象类 Request 类似,代码底层有一个 Response 类用于表示发送给终端用户的应用响应,其中包含响应头、Cookie、响应内容、以及其它发送给终端用户浏览器用于渲染响应页面的东西。 和 Request 类似,Response 的完整类名是 Illuminate\Http\Response,继承自 Symfony 的 HTTP 响应基类 Symfony\...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 请求类 Request 剖析

我们已经知道,在 Laravel 框架中,需要通过 Request 对象来获取用户请求信息,该对象引用的完整类名是 Illuminate\Http\Request,而该请求类又继承自 Symfony 的 Symfony\Component\HttpFoundation\Request,所以在介绍 Laravel 的 Request 之前,需要先对 Symfony 底层的 Request ...

微信小程序开发入门教程(十一):博客小程序项目代码上传、发布上线及访问统计

前面几篇教程我们已经详细介绍了如何通过原生框架开发博客小程序,并基于组件化框架 WePY 对这个小程序项目进行了重构,接下来我们将这个小程序发布到线上方便别人访问。 上传代码 要发布微信小程序,首先需要上传小程序项目代码,打开微信开发者工具,进入要发布的小程序项目,点击右上角的「上传」按钮,在弹出的确认界面点击「确定」: 接下来会弹出一个表单录入框,填写小程序版本号和备注信息后点击「上...

解决 Laravel JWT 多表认证时获取不到当前认证用户的问题

问题描述 最近在做一个项目,需要多表认证,分别为admin和user表,我采用的JWT认证方式,但今天遇到了一个问题:使用Auth::user()返回null,也就是说无法获得当前认证的用户。 网上搜索后,并没有找到直接的解决方案,然后经过几次尝试居然误打误撞地解决了,所以特地记录下来,希望遇到同样问题的人不要再在这问题上耗费太多时间。 注意:这里并不介绍JWT的工作原理和配置,如果想理...

Lumen 使用 throttle 限制接口访问频率

前言 今天碰到过这样一个情况,我需要限制用户请求某个API接口的频率,比如登录、反馈等提交操作,经过一番搜索+折腾,总算是实现了。 在Laravel 5.2的新特性中增加了一个throttle中间件,通过它可以在路由层限制API访问的频率。例如限制频率为1分钟50次,如果一分钟内超过了这个限制,它就会响应:429: Too Many Attempts。 但我在项目中使用的是Lumen...

Laravel 5.8 新特性系列 —— 废弃全局的字符串和数组相关辅助函数

在即将到来的 Laravel 5.8 发行版中,全局的字符串和数组相关辅助函数将会被废弃,并且在 Laravel 5.9 中被彻底移除,你可以在 PR #26898 中查看完整的被废弃赋值函数列表。 这些被废弃的辅助函数在以后的版本中会换一种引用方式,你需要通过 \Illuminate\Support\Str 和 Illuminate\Support\Arr 类来引用它们(这么做的根本...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 底层是如何处理 HTTP 请求的

总体流程 Web 服务器对 HTTP 请求的处理流程大体上都是这样的:在某个端口监听请求,请求进入后运行程序,然后将程序运行结果以响应的形式发送出去。 基于 Laravel 框架构建的 Web 应用处理 HTTP 请求的流程也是如此。所有 HTTP 请求都会被转发到单入口文件 public/index.php,处理 HTTP 请求的核心代码如下(忽略 HTTP 请求处理之外的代码): ...

Laravel 5.8 新特性系列 —— 缓存有效期单位调整

从 Laravel 5.8 开始,传递到缓存驱动的表示缓存有效期(TTL)的整型数据单位将会从分钟调整为秒,秒级缓存会使得开发者得以对缓存周期进行更加细粒度的控制,并且符合 PSR-16 标准: The Time To Live (TTL) of an item is the amount of time between when that item is stored, and i...

微信小程序开发入门教程(十):组件化框架 WePY 开发入门 —— 博客文章详情页重构

上篇教程学院君介绍了如何通过小程序框架 WePY 重构博客小程序首页,这篇我们接着来重构博客小程序文章详情页,后端 API 接口还是保持不变,主要工作在微信小程序前端页面,首先我们需要在 blog-lite 项目中创建详情页页面。 创建新页面 在 PhpStorm 中打开小程序项目,在 src/pages 目录下创建 post.wpy 用于渲染博客详情页: 然后初始化 post.wpy...