Appearance
postman
postman可以高效的测试和维护接口,并支持多平台。
请访问 POSTMAN官网 下载
项目配置
首先创建项目
然后添加API请求
下面使用 postMan
工具来进行测试
环境变量
我们在本地和服务器上都想测试接口,可以将域名定义为环境变量,这样我们只要改变环境域名就会自动变化。
自动更新变量
下面来掌握使用请求结果来自动更新环境变量的方法。
在 Tests 标签中添加以下代码,将请求结果中的token变量保存到环境变量 token
// 响应结果
const response = JSON.parse(responseBody)
//在控制台打印结果(在postman软件底部 Console 标签查看)
console.log(response);
//储存到环境变量token
pm.environment.set("token",response.token);
请参考下图配置
数据格式说明
postman常用数据提交方式说明如下
- form-data 可以提交数据与二进制文件
- x-www-form-urlencoded 只提交键值对数据
- raw 提交json格式的数据
Session/Cookie
postman支持cookie与session运行模式。
插件安装
首先需要安装插件 Postman Interceptor ,如果不方便访问chrome应用商店,可以自先百度搜索下载该插件。
软件配置
下面来配置Postman软件,需要开启cookie拦截并添加域名。
cookie拦截
现在通过浏览器的访问获取的cookie会自动传递到postman里
CSRF
如果使用postman访问得到419状态码,即表示csrf-token验证失败。
修改Laravel项目的 app\Http\Middleware\VerifyCsrfToken
文件添加排除csrf验证的路由。
class VerifyCsrfToken extends Middleware
{
protected $except = [
'api/*'
];
}
伪造请求
下面来讨论laravel框架与postman结合使用时的问题。
form-data提交失败
使用postman 的form-data 提交数据时,因为laravel中不能接收 postman中的 PUT与DELETE提交,会出现提交失败的问题。
可以使用以下方式解决
改变提交方式
使用x-www-form-urlencoded形式提交
伪造请求方式
首称在form-data 中添加 _method 字段,值为 PUT或DELETE来模拟put与delete请求。然后使用post请求方式