热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

API开发神器Postman

PostmanhelpsyoudevelopAPIsfaster.豪华午餐PostmanPostman构建、管理、文档化API在线安装Chrome插件版https:chrome.g

Postman helps you develop APIs faster.

豪华午餐

《API开发神器-Postman》 Postman

Postman

构建、管理、文档化API

  • 在线安装
  • Chrome插件版
    https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop
  • MAC版
    https://www.getpostman.com/app/postman-osx
  • 离线安装
    使用已经安装好的Postman文件夹,机器默认存放目录:/Library/Application\ Support/Google/Chrome/Default/Extensions
    进入chrome://extensions/,选择Load unpacked extensions,加载Postman的文件夹

《API开发神器-Postman》 Newman(我真的不是MP3)

Newman

Newman is a command-line collection runner forPostman. It allows you to effortlessly run and test a Postman collection directly from the command-line. It is built with extensibility in mind so that you can easily integrate it with your continuous integration servers and build systems.

  • 安装: newman:npm install -g newman
  • 功能: 直接运行Postman的接口Collection数据(本地或远程)
  • 运行: 本地Postman保存的Collection内容

➜ Downloads newman -c Demo.postman_collection.json
Iteration 1 of 1
200 1479ms Open the url of Baidu. [GET] http://www.baidu.com
✔ Status code is 200
Summary:
Parent Pass Count FailCount
-------------------------------------------------------------
Collection Demo 1 0
Total 1 0

  • 运行远程Postman

➜ ~ newman -u https://www.getpostman.com/collections/676a42223e14bf54ad84
Iteration 1 of 1
200 240ms Open the url of Baidu. [GET] http://www.baidu.com
✔ Status code is 200
Summary:
Parent Pass Count FailCount
-------------------------------------------------------------
Collection Demo 1 0
Total 1 0

《API开发神器-Postman》 Interceptor

Interceptor

Postman interceptor brings the power of your Chrome window to Postman! You can set custom headers (including COOKIEs) from within Postman, and view COOKIEs already set on the domain. You can also capture requests being sent from Chrome and import them into Postman. This makes building APIs a breeze!

  • 安装
    https://chrome.google.com/webstore/detail/postman-interceptor/aicmkgpgakddgnaphhhpliifpcfhicfo/
  • 功能
  • 记录浏览器请求并直接导入到Postman
  • 可添加Filter,对浏览器中的请求进行过滤
初级使用

录制API-Interceptor

  • 设置浏览器中的Interceptor:打开开关、设置Filter(仅过滤www.jianshu.com
    《API开发神器-Postman》 Chrome中设置Interceptor
  • 设置Postman中的Interceptor:打开开关
    《API开发神器-Postman》 Postmsn中打开Interceptor
  • 开始录制:在Chrome浏览器中输入http://www.jianshu.com/p/4a677c5f79f1,回车后,查看Postman的请求录入
    《API开发神器-Postman》 录制API结果

回放API-Postman

  • 选择Postman中的API:Get http://www.jianshu.com/p/4a677c5f79f1
    《API开发神器-Postman》 指定API
  • 点击Send,进行回放。可查看到请求的返回状态码200、数据Body
    《API开发神器-Postman》 回放结果

指定API请求-Postman

  • URL输入框中,输入目标地址:http://www.jianshu.com/p/4a677c5f79f1。点击Send按钮
    《API开发神器-Postman》 1步搞定指定API请求
高级使用

规划管理API – Postman+Collection

将所有的API进行分类管理,如按模块、系统、类型

保存API至Collection

  • 选中需要保存的API,点击请求列表中的Save to collection
    《API开发神器-Postman》 Save to collection
  • 可将此API保存至已有的Collection新增Collection

重命令API请求-便于管理和查看

  • 切换到Collections列表,点击API请求的操作区,选择Edit
    《API开发神器-Postman》 Edit-API信息

常用权限应用尽有-Authorization

《API开发神器-Postman》 Authorization设置

  • Postman在请求时,可指定此次请求Auth方式
  • 可设置Auth中的具体内容,完全自行定义。如设置Basic Auth中的用户名和密码

《API开发神器-Postman》 Basic Auth

完全自定义的头-header

《API开发神器-Postman》 Header设置

  • 编辑已有Header中的元素
  • 新增Header中请求时,需要的Key:Value
  • 禁用及启用Header中的元素,对于不清楚API请求时,具体哪些是必须要传递的比较有用

完美的数据体-body

《API开发神器-Postman》 Body设置

  • 在请求需要发送数据体时,可通过设置body内容
  • 支持form-data/x-www-urlencoded/raw/binary,格式的数据

请求前还能做点事-Pre-request Script

《API开发神器-Postman》 Pre-request Script设置

  • 请求发送前,可进行一些脚本设置。如:设置或清除参数、变量

验证API请求结果-Tests

Postman提供了常用的测试功能:返回内容处理、状态码判断、请求超时等。点击后自动添加到Test脚本中

《API开发神器-Postman》 Test命令集合

进阶使用

带你快速走向各个环境-Environment

  • 添加QA环境URL地址变量
    《API开发神器-Postman》 添加QA环境的地址变量
  • 添加DEV环境的URL地址变量。此时就有两个环境地址
    《API开发神器-Postman》 QA、DEV,两个环境
  • 修改请求中的URL地址为:{{URL}}p/4a677c5f79f1,切换环境至QA环境
    《API开发神器-Postman》 变更URL、切换环境
  • 点击Send,请求QA环境中的数据
    《API开发神器-Postman》 真实的请求QA环境

使用Evnironment,可设置环境地址及环境中的不同数据,便于在跨环境后, 相同API可快速使用,减少调整API的成本

分享你的成果-导出/导入 or share

导出-Download

  • Postman中有Download功能(即导出功能),且Download后的可直接导入
  • 可将CollectionEnvironment的数据进行Download
    PS:导出的数据其实是JSON数据格式,可随意

导入-Import

  • 导入所有导出的数据
  • 被导入的数据格式与内容与导出时,完全一致

分享-share

  • share功能需要登录后,才能使用。且shared成功后,对应的链接会保存到用户数据中
    《API开发神器-Postman》 share-link
  • 点击链接,会直接打开share的API设置内容

导出/导入、share,便于在团队内部协作时使用,API的请求及管理团队化

海量执行你的请求 – Runner

当你有大量的API时,肯定想一次执行多个多次执行多个,Postman的Runner可以满足你的需求。

  • 调整API的结构、添加必要的测试验证
    《API开发神器-Postman》 调整
  • 打开Runner,设置执行参数:选择要执行的Collection、执行多少次Interation、请求的延迟Delay、数据文件、变量控件
    《API开发神器-Postman》 执行参数
  • Start Test查看运行结果RESULTS
    《API开发神器-Postman》 Results

CI挂起来 – Newman

直接使用Newman命令,快速把Postman与CI集成起来(直接使用shell命令,即可)。

newman -c demo.postman_collection --exitCode 1

PS:

  • 3.2.0版本之后,将原来的Jetpack(Runner/Newman)功能免费,以上所提到的功能全部免费使用
  • 本文使用版本为4.2.2
参考
  • Postman官网
    http://getpostman.com/
  • Newman
    https://www.npmjs.com/package/newman
  • Postman Collection
    http://www.getpostman.com/docs/collections
  • Postman Environment
    https://www.getpostman.com/docs/test_multi_environments
  • How to write powerful automated API tests with Postman, Newman and Jenkins
    http://blog.getpostman.com/2015/09/03/how-to-write-powerful-automated-api-tests-with-postman-newman-and-jenkins/

推荐阅读
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 通过将常用的外部命令集成到VSCode中,可以提高开发效率。本文介绍如何在VSCode中配置和使用自定义的外部命令,从而简化命令执行过程。 ... [详细]
  • 使用ArcGIS for Java和Flex浏览自定义ArcGIS Server 9.3地图
    本文介绍了如何在Flex应用程序中实现浏览自定义ArcGIS Server 9.3发布的地图。这是一个基本的入门示例,适用于初学者。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • MicrosoftDeploymentToolkit2010部署培训实验手册V1.0目录实验环境说明3实验环境虚拟机使用信息3注意:4实验手册正文说 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • .NET Core 托管服务优化与实践
    在.NET Core应用中,托管服务的形式主要分为进程内托管(InProcess)和进程外托管(OutOfProcess)。这两种托管方式各有优缺点,本文将深入探讨它们的特点,并结合实际案例,介绍如何根据具体需求选择合适的托管模式,以实现性能优化和资源利用的最大化。此外,文章还将分享一些实用的配置技巧和最佳实践,帮助开发者提升应用的稳定性和可维护性。 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 本文详细介绍了如何使用OpenSSL自建CA证书的步骤,包括准备工作、生成CA证书、生成服务器待签证书以及证书签名等过程。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 深入解析 Lifecycle 的实现原理
    本文将详细介绍 Android Jetpack 中 Lifecycle 组件的实现原理,帮助开发者更好地理解和使用 Lifecycle,避免常见的内存泄漏问题。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • Docker 中创建 CentOS 容器并安装 MySQL 进行本地连接
    本文详细介绍了如何在 Docker 中创建 CentOS 容器,并在容器中安装 MySQL 以实现本地连接。文章内容包括镜像拉取、容器创建、MySQL 安装与配置等步骤。 ... [详细]
  • 在 CentOS 7 系统中安装 Scrapy 时遇到了一些挑战。尽管 Scrapy 在 Ubuntu 上安装简便,但在 CentOS 7 上需要额外的配置和步骤。本文总结了常见问题及其解决方案,帮助用户顺利安装并使用 Scrapy 进行网络爬虫开发。 ... [详细]
author-avatar
英雄泪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有