postman 设置api_token,测试数据等操作
在postman的环境变量中先设置好一个用户的token(事先你的数据库里面要有用户的这个数据),如下图:
然后在api请求的url 的head头部添加对应的token键名,value值用花括号{{token}}包住,就会自动获取其值。
1、routes.php文件设置中间件路由,将你的控制器放在里面
Route::group(['middleware' => 'auth.api'], function () { Route::controllers([ 'check_lists' => 'CheckListsController',
]);
});
中间件middleware文件目录下创建AuthenticateApi.php
<?php namespace App\Http\Middleware; use Closure;
use App\Models\User;
use Illuminate\Support\Facades\Auth; class AuthenticateApi
{
public function handle($request, Closure $next)
{ $token = $request->header('Token');
if (! $token) {
return \JSend::error('Missing Api Token.', 401);
} $user = User::where('token', $token)->first();
if (! $user) {
return \JSend::error('Invalid Api Token.', 401);
} Auth::setUser($user); return $next($request);
}
}
在Kernel.php文件里面注册该中间件。
<?php namespace App\Http; use Illuminate\Foundation\Http\Kernel as HttpKernel; class Kernel extends HttpKernel
{
/**
* The application's global HTTP middleware stack.
*
* These middleware are run during every request to your application.
*
* @var array
*/
protected $middleware = [ ]; /**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
], 'api' => [
// 'throttle:60,1',
],
]; /**
* The application's route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [ 'auth.api' => \App\Http\Middleware\AuthenticateApi::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'can' => \Illuminate\Foundation\Http\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
];
}
接着,在url请求的控制器里面验证下时候请求成功
<?php namespace App\Http\Controllers\Api; use App\Models\CheckList;
use App\Models\User;
use App\Models\Good;
use App\Models\GoodCate;
use Illuminate\Http\Request; use App\Http\Controllers\Controller; class CheckListsController extends Controller
{ //添加检查清单
public function postAddList(Request $request)
{
dd(auth()->user()->id);
成功获取到该token对应的用户的ID;
postman 设置api_token,测试数据等操作的更多相关文章
- 与你相遇好幸运,Postman设置Header不生效问题解决
POstMan安装地址 安装完 , Postman 设置Header的Referer不生效 , 提示 Restricted Header (use postman interceptor) 时 , 要 ...
- postman设置测试环境
有时需要我们在不同的环境下跑相同的测试,就可以通过postman设置环境 展开环境切换下拉列表,点击[Manage Environments]
- postman设置token关联参数,其他接口直接读取token变量
问题描述:有一个登录接口获取token,其他接口再次访问时都要带上token 解决方案: 步骤一:在登录接口访问后设置postman的环境变量,例如设置环境变量名:token,值为登录接口访问成功后, ...
- postman设置环境变量、全局变量
讲postman环境变量设置之前,先讲一个小插曲,环境变量.全局变量的区别在于Globals,只能用一组,而Environmen可以设置多组,所以我更喜欢设置环境变量 1.环境变量-Environme ...
- postman发送请求的简单操作
发送请求常用的是post和get 两者的区别是: 1.post比get安全,因为参数直接暴露在url中,不能用来传递敏感信息 2.get参数通过url传递,post放在request body中 3. ...
- postman设置页面详解
设置详解/General Trim keys and values in request body:如果使用form-data或者url-encoded的方式向服务器发送数据:将该选项设置为ON,则会 ...
- Postman设置自动捕获传递Cookie教程
目录 前言 一.安装 1.Postman安装Install Interceptor Bridge 2.谷歌浏览器安装扩展Postman Interceptor 二.使用 1. 打开Capture Co ...
- postman设置环境变量
postman属于一键式安装,不多赘述 1.设置环境变量 点击设置进入 添加环境变量 添加成功可选择 应用{{}}包住变量名即可 地址变化更换即可
- Postman 设置全局变量和环境变量设置(之 图形界面设置变量)
在Postman中有两种方法添加变量:1.图形界面操作添加 2.执行代码添加 1.图形界面操作添加,点击右上角齿轮按钮手动添加所需测试环境: 2.点击右上角的小眼睛可以编辑.添加“全局变量”和 ...
随机推荐
- 我手机上常用的app和常访问的网站
====常用======Opera Mini browser 浏览器(版本26.0.2254.117241以上) 老版本7.7最最经典, 但该版本在新的安卓手机上总有部分区域显示空白. 现在的 Ope ...
- Error:Failed to resolve: com.android.support:recyclerview-v7:26.1.0
修改gradle allprojects { repositories { maven { url "https://maven.google.com" } jcenter() } ...
- content-type: application/json没有设置导致的500错误
$.ajax({ url:'http://xxx.test', type: 'Post', data: JSON.stringify(model), dataType: 'json', content ...
- 【python小练】0013
第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-) 科科...妹子就算了,大晚上的爬点吃的吧.食物图集:抿一口,舔一舔,扭一扭~·SCD 写个简单的爬图爬虫 ...
- DateTime时间格式转换为Unix时间戳格式
/// <summary> /// 将DateTime时间格式转换为Unix时间戳格式 /// </summary> /// <param name="date ...
- 第27月第24天 git pull fetch
1. 在进行 pull 操作的同时,其实就是 fetch+merge 的一个过程.我们从 remote 分支中拉取新的更新,然后再合并到本地分支中去. 如果 remote 分支超前于本地分支,并且本地 ...
- __call__
object.__call__(self[, args...]) Called when the instance is “called” as a function; if this method ...
- yum upgrade和yum update的区别
Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的: yum -y update 升级所有包同时也升级软件.系统版本和系统内核 yum -y upgr ...
- MySQL触发器trigger的使用
https://www.cnblogs.com/geaozhang/p/6819648.html 触发器的触发 语句的错误 和 触发器里面 错误 都不会运行 NEW与OLD详解 MySQL 中定义了 ...
- Java NIO之Selector(选择器)
历史回顾: Java NIO 概览 Java NIO 之 Buffer(缓冲区) Java NIO 之 Channel(通道) 其他高赞文章: 面试中关于Redis的问题看这篇就够了 一文轻松搞懂re ...