基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(三) —— 安装配置 Laravel Passport

早在 Laravel 5.3 中就已经引入了 Laravel Passport(详情查看相关文档),如果你还没有用过它,实在让人难以置信,通过 Laravel Passport,你可以在几分钟内搭建起一个功能完备的 OAuth 服务器,用户可以像 Github、微信、QQ、Google 那样基于你提供的 OAuth 服务登录到不同的 Web 服务。不过,我们的目标是不同设备通过同一个入口...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(二) —— 安装配置 Laravel Socialite 并实现基于 Github 的用户认证

在上一篇教程中,我们完成了 Roast 应用的初始化工作,这一篇教程将在其基础上安装 Laravel Socialite 扩展包并实现基于 Github 进行登录认证,Laravel Socialite 还支持世界上其他主流的社交媒体,你可以在这里找到所有第三方 OAuth 提供者:Socialite Providers,你可以按照自己的需求对第三方 OAuth 服务进行更改,我们这里只...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(一) —— 初始化 Laravel 单页面应用

今天开始,学院君要开启一个系列教程,和之前的博客系列一样,通过一个完整的手把手教程带大家学习如何通过 Laravel + VueJS 开发 API 驱动的应用程序,整个教程的篇幅大概在 40 篇左右,主要讲述 Web 端及移动端的单页面应用(Single Page Application)开发,后端基于 Laravel 5.6,前端基于 Vue 2,演示教程的开发环境使用的是 MacOS...

基于 Laravel + Botman 轻松实现微信公众号聊天机器人

快速入门 Botman 是什么 开始之前,我们需要花一点篇幅先了解下 Botman 是什么。官方介绍如下: Botman 是一个与框架无关的、可以在不同消息平台轻松实现聊天机器人的 PHP 库,这些消息平台包括但不限于 Slack、Telegram、Microsoft Bot Framework、Nexmo、HipChat、Facebook Messenger 以及微信等。 Bo...

基于 Laravel + Vue + GraphQL 实现前后端分离的博客应用(三) —— 文章发布及浏览

用户认证 我们设定只有认证通过的用户才能发布新文章,因此需要通过某种方式将用户认证头信息和其他请求信息一起发送到发布文章接口,以便顺利发布新文章。通过 apollo-link-context 我们可以轻松实现这个功能。在 src/main.js 中的合适位置插入如下代码: import { setContext } from 'apollo-link-context' cons...

基于 Laravel + Vue + GraphQL 实现前后端分离的博客应用(二) —— 用户列表及详情页

创建菜单组件 书接上文,用户登录成功之后会进入管理后台,为此我们需要为后台界面编写导航菜单组件。还是在 components/Admin 目录下创建一个 Menu.vue: <template> <aside class="menu"> <p class="menu-label">文章</p> ...

基于 Laravel + Vue + GraphQL 实现前后端分离的博客应用(一) —— 用户注册登录

概述 今天开始,学院君将通过三篇教程的篇幅来系统介绍如何基于 Laravel + Vue 实现一个简单的、带用户认证的、前后端分离的博客应用,同时趁热打铁地将 GraphQL 融入进来实现 API 构建 —— Laravel 作为 GraphQL 服务端为前端 Vue 应用提供 API 接口。 前端应用初始化 后端 Laravel 应用我们以前面地 API 系列教程中使用的 apidem...

解决前后端分离应用跨域请求利器 —— Laravel CORS 扩展包

概述 对于前后端分离的应用,跨域请求是个绕不过去的坎。接下来的 API 系列教程中,学院君将会推出基于 Vue + Laravel + GraphQL 实现的前后端分离的博客应用,这里面自然也涉及到大量跨域请求,跨域请求的解决方案有 CORS 和 JSONP(了解更多明细可以参考这篇教程),但是 JSONP 有个致命缺点 —— 仅支持 GET 请求,所以推荐使用 CORS(Cros...

Laravel API 系列教程(五):基于 GraphQL 构建 Laravel API —— 高级使用篇

上一篇教程中我们重点探讨了 GraphQL 的概念及其在 Laravel API 构建中的基本使用,本篇教程将在其基础上探讨关于 GraphQL 的一些更高级的使用。 带参数的查询 带参数的查询是构建 API 时的常见操作,上一篇教程中编写的列表查询功能已经支持带参数查询,只需传入相应查询参数即可:  嵌套资源 关联关系是 Laravel 模型操作中又一重要功能,...

Laravel API 系列教程(四):基于 GraphQL 构建 Laravel API —— 基本使用篇

GraphQL 简介 GraphQL 是一个用于 API 的查询语言,同时也是一个通过为你的数据定义类型系统进行查询的服务端运行时。GraphQL 与数据库或任意存储引擎无关,仅仅是代码逻辑层面的查询实现。 通过 GraphQL,可以提高 API 调用的灵活性。我们可以在访问 API 时像编写数据库查询一样通过编写查询语句指定需要的数据,这在构建复杂 API 时很有用,Gra...