Laravel Sanctum 为 SPA(单页应用程序)、移动应用程序和基于令牌的、简单的 API 提供轻量级身份验证系统。...Sanctum 允许应用程序的每个用户为他们的帐户生成多个 API 令牌。这些令牌可以被授予指定允许令牌执行哪些操作的能力 / 范围。...简单来说,前后端分离的项目,使用 token 验证登陆状态,可以选它;另外,同类型的还有 jwt 比较火 安装 Laravel 9 已经包含了 Laravel Sanctum,所以下面的步骤看看就行了...中间件组中: 'api' => [ \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,...这一行,Laravel 9默认是注释掉的,需要取消注释 API 令牌认证 发布 API Tokens 要开始为用户颁发令牌,你的 User 模型应使用 Laravel\Sanctum\HasApiTokens
前言 本文原文:Laravel API Tutorial: How to Build and Test a RESTful API 这次一次来了两个没接触过的内容,一个与php的Laravel 有关,一个与...在本文中,我们将探讨如何构建和测试使用Laravel进行身份验证的强大API。我们将使用Laravel 5.4,所有的代码都可以在GitHub上参考。...认证 在Laravel中有许多实现API身份验证的方法(其中之一是Passport,实现OAuth2的好方法),但在本文中,我们将采用一个非常简化的方法。...测试我们的端点 Laravel包含通过phpunit.xml已经设置的PHPUnit开箱即用的集成。该框架还为我们提供了几个帮助者和额外的断言,使我们的生活更容易,特别是测试API。...绝对有改进的空间 - 您可以使用Passport软件包实现OAuth2 ,集成分页和转换层(我推荐使用Fractal),但是我想通过在Laravel中创建和测试API的基础知识外部包装。
在开发Api时,处理客户端请求之前,需要对用户进行身份认证,Laravel框架默认为我们提供了一套用户认证体系,在进行web开发时,几乎不用添加修改任何代码,可直接使用,但在进行api开发时,需要我们自己去实现...,并且Laravel框架默认提供的身份认证不是jwt的,需要在数据库中增加api_token字段,记录用户认证token并进行身份校验,如果需要使用jwt,无需添加字段,需要借助三方库来实现。...require tymon/jwt-auth:dev-develop 参考文档: https://github.com/tymondesigns/jwt-auth/wiki/Installation 2....getJWTCustomClaims() { return []; } } 6.修改配置文件 auth.php 'guards' => [ 'api...php namespace App\Http\Controllers\Api; use App\Http\Controllers\Controller; use App\Models\Member;
我们写接口时,往往需要根据业务逻辑返回给客户端一些异常信息,在laravel框架中实现很简单 1在.app/Exceptions/Handler.php中重写 Illuminate\Foundation...php namespace App\Http\Controllers\Api; use Illuminate\Http\Request; use App\Http\Controllers\Controller
沿着上一篇来讲,我们来创建一个简单的item产品api,也是用到laravel dingo/api来实现,对dingo/api不熟的朋友可以翻看前面的文章。...好,我们随着ytkah一起来创建产品api 1,创建model并生成迁移表(-m表示) php artisan make:model Item -m 生成了一个model(/app/Item.php...2,创建routes 打开/routes/api.php,添加一个test路由 $api->get('test', 'App\Api\Controllers\HelloController@test...3,添加controller 打开/app/Api/Controllers/HelloController.php,添加 use App\Item; 还有调用item的方法 public function...test() { $items = Item::all(); return $items; } 测试一下是不是有问题http://www.z5w.net/api
所有的 Laravel 路由都在 routes 目录中定义,这些文件都由框架自动加载。routes/web.php 文件用于定义 web 界面的路由。...定义在 routes/api.php 中的路由都是无状态的,并且被分配了 api 中间件组。 大多数的应用构建,都是以在 routes/web.php 文件定义路由开始的。...Http\Controllers\UserController; Route::get('/user', [UserController::class, 'index']); 定义在 routes/api.php...在这个路由组中,将自动应用 /api URI 前缀,所以你无需手动将其应用于文件中的每个路由。你可以通过修改 RouteServiceProvider 类来修改前缀和其他路由组选项。...在app\Providers\RouteServiceProvider.php 中修改API路由的前缀Route::prefix('api') ?
讲讲我最近用 Laravel 做的一个 App 后端项目 Laravel Passport API 认证使用小结 关于 RESTful API 设计的总结 Laravel 5.5 使用 Passport...RESTful API 的一些心得 对 REST 的理解 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 在 Laravel 中动态隐藏 API 字段 Nginx 下部署...for Designing a Pragmatic RESTful API(译:RESTful 最佳实践 译文2)有实际的案例 Enchant HTTP API Design Guide(译:HTTP...OpenNMS Wiki ReST API REST API 使用详解 Lean Cloud 中讲解 REST API 的使用,还集成 Swagger UI 在线调试工具,点击查看。...接口错误代码机制; APNS 消息推送服务器端介绍及实现; API 测试 —— 单元测试、集成测试、黑盒测试; 快速完成 API 文档; Passport / OAuth 2.0 认证。
public class Swagger2Configuration { /** * 配置 Swagger 2 * 注册一个 Bean 属性 * enable()...:是否启用 Swagger,启用后才能在浏览器中进行访问 * groupName():用于配置 API 文档的分组 */ @Bean public Docket docket...qq.com * @微信 : cunyu1024 * @公众号 : 村雨遥 * @网站 : https://cunyu1943.github.io * @description : */ @Api...http://localhost:8080/swagger-ui.html 访问如上地址后,如果出现下面的界面,说明我们 Spring Boot 集成 Swagger2 就到此成功了。...总结 以上就是本文的所有内容了,主要对 Swagger 进行了简单介绍,并用 Spring Boot 集成 Swagger,同时还进行简单的测试。
好在 laravel 给我们提供了 Vite,下面我以一个纯前端的项目企业展示型小程序 - 管理员端 为例,介绍一下如何把 vue3 项目集成到 laravel 准备 创建一个laravel的项目 composer...create-project laravel/laravel=10.* --prefer-dist laravel-demo 大概步骤 cd laravel-demo composer install...from 'laravel-vite-plugin'; export default defineConfig({ plugins: [ laravel({.../resources/js', import.meta.url)) } }, }); 集成 Vue3 项目 web路由 vi routes/web.php Route::get(...-> laravel-demo/package.json enterprise-admin/.env.development -> laravel-demo/.env enterprise-admin
代码示例:产品列表和用户列表的 API 例子 昨天我们学习了 在 Visual Code 中搭建 Laravel 环境,现在我们来学习 Facebook 的 GraphQL 。...graphql.org GraphQL 可以提升 API 调用的灵活性,我们可以像写数据库查询语句一样来请求 API 来获取所需要的数据,这对构建复杂的 API 查询来说非常有用。...安装 Laravel 使用下面命令安装最新版本的 Laravel : # 在命令行中执行 composer global require "laravel/installer" laravel new...laravel-graphql 2....添加 GraphQL 的包 使用 composer 安装 graphql-laravel,这个包提供了非常多的功能用于整合 Laravel 和 GraphQL 。 3.
新装一个LV composer create-project --prefer-dist laravel/laravel myApiProject 安装dingo api 在composer.json中添加...API_STANDARDS_TREE=vnd // 环境 API_SUBTYPE=myapp // 子类型 API_PREFIX=api // 前缀 API_DOMAIN=api.myapp.com...//子域名 (前缀和子域名只能存在一个)可选 API_VERSION=v1 // 版本 API_NAME=My API // 名字(使用API Blueprint命令才会用到) API_CONDITIONAL_REQUEST...下面是我的配置: API_STANDARDS_TREE=vnd API_SUBTYPE=emall API_PREFIX=api API_VERSION=v1 没必要每个都配上去,主要的配一下就可以了...password']), ]); } } 打开Postman进行测试地址:http://127.0.0.1/myApiProject… [图片上传失败…(image-e47af2-
1,修改.env配置文件添加 API_STANDARDS_TREE=vnd API_SUBTYPE=myapp API_PREFIX=api API_DOMAIN=null API_VERSION=v1...API_NAME="My API" API_CONDITIONAL_REQUEST=false API_STRICT=false API_DEBUG=true Standards Tree 标准树 ...子域名API_DOMAIN 比如可以用api.z5w.net来做api的调用地址。...在生成 API 文档时也会使用这个版本号作为默认值。 名称Name 你的 API 的名称只会在你使用 API Blueprint 命令生成文档的时候使用。...2,在/routes/web.php添加路由 $api = app('Dingo\Api\Routing\Router'); $api->version('v1', function ($api) {
前言 相信很多后端开发在项目中都会碰到要写 api 文档,不管是给前端、移动端等提供更好的对接,还是以后为了以后交接方便,都会要求写 api 文档。...文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。 官网:https://swagger.io Swagger 使用 1.相关依赖 <!...Controller 中使用 Swagger 注解 @RestController @RequestMapping("/api") @Api(tags = { "接口分组1"...@Api 用于类,表示标识这个类是swagger的资源。属性如下: tags 表示说明,tags如果有多个值,会生成多个列表 value 表示说明,可以使用tags替代 2....api-docs .
,不好管理; Swagger简介 swagger是一个API框架,号称世界上最流行的API工具。...它提供了API管理的全套解决方案,比如API在线编辑器,APIUI展示界面,代码生成器等诸多功能。 Swagger官方地址 Springfox简介 如果想引入swagger进行API管理。...Springbox官方地址 Maven依赖 io.springfox springfox-swagger22; @SpringBootApplication @EnableSwagger2 @MapperScan("com.lx.mapper") public...Swagger REST API页面 注解 @Api 用在类上,说明该类的作用 @Api(value = "UserController", description = "用户相关api") @ApiOperation
为什么使用 Swagger2 相信刚开始不熟悉 web 开发的时候,大家都有手写 Api 文档的时候。...而 Swagger2 的出现恰好能个解决这些痛点。因为 Swagger2 有以下功能: 文档自动更新,只要生成 Api 的网址没变,基本不需要跟前端沟通。...集成演示 首先新建一个 SpringBoot 项目,还不会的参考我这篇旧文—— 如何使用 IDEA 构建 Spring Boot 工程 构建时,在选择依赖那一步勾选 Web、LomBok、JPA 和 Mysql...:修饰整个类,描述Controller的作用 @Api("StudentController Api 接口文档") public class StudentController { @Autowired...message:返回自定义信息 3.response:抛出异常的类 @ApiIgnore: 表示该接口函数不对swagger2开放展示 @Api:修饰整个类,描述Controller的作用 @ApiParam
在写Laravel测试代码(一) 中聊了关于如何提高 laravel 数据库测试性能,其实简单一句就是:每一个test case, 只重新 seed 被污染的表。...PHPUnit processes * * 1) Generate a random testing database with automatic destroy upon finish * 2)...$pdo->errorInfo()[2]); } /* // Check if tables are inserted....lx1036%`.* TO 'testing'@'localhost'; 这样就临时测试数据库就准备完毕了,然后就是seed 测试数据,执行unit/feature tests, 执行assert等等,可以参考写Laravel
本例子使用Laravel 5.2版本 这里记录的是较为灵活的方案,不考虑使用swaggervel,具体使用参考一下步骤: 安装依赖swagger-php composer require zircote...( * schemes={"http"}, * basePath="/", * consumes={"application/json"}, * tags={ * @SWG\Tag( * name="API...", * description="API接口" * ) * } * ) * * @Info( * title="API文档", * version="0.1" * ) * * @return mixed...&& url.length > 1) { url = decodeURIComponent(url[1]); } else { url = "http://petstore.swagger.io/v2/
上一篇试着用migrate操作了一下数据库; 创建了一个表; 这次用php写一个借口,前端通过这两个借口,对数据库进行操作; 先创建一个用户表 默认创建的不是我们想要的,回滚一下 2.方便简单,在生成的文件中就只加两个字段...文件 通过命令创建; 原本app目录下自动生成了一个用户模型,删除一下就是; 原本生成那个需要各种验证,下次谈; 5.生成之后,可以不动,先打开route文件夹下的web文件; 添加两个路由,相当于是api...了; 分别是/api与/find 执行的逻辑如下图 6.之后打开模型文件User.php 添加两个方法,对应刚才那个路由需要的逻辑; 如下图 一个是添加数据 一个是查找数据 7.启动服务,进行请求 返回
背景 在项目开发的过程中,免不了使用修改功能,而富文本编辑器是极为方便的一种推荐,当然,个人认为 MarkDown 更为简单,但是感觉暂时只适合程序猿 此文介绍如何在 Laravel5.5 框架中集成使用富文本编辑器...第一种是使用 composer 进行安装,可推荐参考文章 Laravel-u-editor,个人试过,无法上传图片 … ②..../p>2....jpg" title="NjUzNDczMDc3ODU2.jpg" alt="article_3.jpg" width="906" height="450"/> ②....其实原本的ThinkPHP框架中也集成过UEditor,但是没有这种问题,通过阅读源码,找到正则表达式的匹配位置 Public/ueditor-mz/php/Uploader.class.php 大概在
"dingo/api": "^2.0", "tymon/jwt-auth": "~1.0.0-rc.1", #...... } 2.直接require 依赖包 composer...('demo', function () { return 'hello world'; }); }); # 示例2 $api->version('v2', [ 'namespace...' => 'App\Http\Controllers\Api\V2', 'middleware' => 'serializer:array', ], function($api) { $.../2.0.0/Configuration/1444#6cdca8 https://learnku.com/docs/laravel/5.8/api-authentication/3952 https:/.../learnku.com/laravel/t/27760
领取专属 10元无门槛券
手把手带您无忧上云