postman——基础操作——API请求与响应——构造器
前提基础回顾:
http请求报文的结构: 浏览器发送给web服务器的http请求报文,如下所示:先看Request 消息的结构, Request 消息分为3部分:第一部分叫Request line, ------------>起始行第二部分叫Request header, ------------>首部第三部分是body, ------------>主体注意:header和body之间有个空行,
---------------------------------------------------------------------------------------------------------------------------第一行中的Method表示请求方法,比如"POST","GET", Path-to-resoure表示请求的资源, Http/version-number 表示HTTP协议的版本号当使用的是"GET" 方法的时候, body是为空的我们打开Fiddler 捕捉一个登录的Request 然后分析下它的结构, 在Inspectors tab下以Raw的方式可以看到完整的Request的消息:
-------------------------------------------------------------------------------------------------------------------
下面为get方法,并带有参数
GET https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=sitehao123&wd=%E4%B8%AD%E5%9B%BD&rsv_pq=ee5e88db00155eb1&rsv_t=9b46NVmtUvhHk8NuPqytTgFcpScJZfmNOSxhFBaAu5rlcjCsQ9PfON8N98xNepLuQQ&rqlang=cn&rsv_enter=0&rsv_dl=tb&rsv_sug3=10&rsv_sug1=1&rsv_sug7=001&prefixsug=%25E4%25B8%25AD%25E5%259B%25BD&rsp=8&rsv_sug9=es_0_1&inputT=10643&rsv_sug4=12203&rsv_sug=9 HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Referer: https://www.baidu.com/?tn=sitehao123&H123Tmp=nunew11
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: BIDUPSID=1655D38E3EB9FAF984C3D838C40375AC; PSTM=1564563068; BD_UPN=12314553; BAIDUID=8B7CDF0DBB1D8B4D8DC4288AE32C655B:FG=1; ispeed_lsm=2; MCITY=-%3A; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BDSFRCVID=7AKsJeCCxG3e2tjwgnO1j79umibdsgZhD6873J; H_BDCLCKID_SF=tbAD_CKKf-3bfTuGDJOqKn0thxtX2bjMfbTf_p7F5l8-hCQXDPjf-n-shxTw-lQCMJ7PBfQaKqcxOKQphPbm5nIXQ48qbpbjb2oiLInN3KJm_UK9bT3v5Duy-tQ42-biW2tH2Mbdax7P_IoG2Mn8M4bb3qOpBtQmJeTxoUJ25DnJhhCGe6D2e5Q3jNLsbtQb26r-3--8-bTVHRDk5-Qo-4_eqxby26Pf0m3eaJ5n0-nnhnK45-6bbPCgDfCfqRQL2CrbQb3u2p--bK0Ry66jK4JKDG0tJ6OP; H_PS_PSSID=1469_21080_30211_30071_26350; H_PS_645EC=881dEMXJjSRsjFsceTvx5SWR2G%2FilqMyfp6iGiw%2BDfeUUG0wTEM81HCuM8v1K4C3CQ; delPer=0; BD_CK_SAM=1; PSINO=5; BDSVRTM=113
注意:浏览器可以在get方法中把数据传给服务器,数据放在URL的?后面;
百度搜索中,查询字符串以名=值这样的形式出现,多个名值之间用&分隔开;
----------------------------------------------------------------------------------------------------------------------------------------请求方法 请求资源即URL http协议的版本号POST https://anp.njpji.cn/un_manager/user/toLogin HTTP/1.1 ---------起始行
Host: anp.njpji.cn --------->下面是header首部
Connection: keep-alive
Content-Length: 85
Accept: */*
Origin: https://anp.njpji.cn
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Referer: https://anp.njpji.cn/un_manager/views/session/login.html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: Hm_lvt_70a44149803685eae3a9163f23ea34b7=1566289322,1566346318; JSESSIONID=5C305287359661147AD9C5570451A7E8------->空行
username=7droqslNzQg%3D&password=Jrrw3HiJ%2BArijSvr3jrq1Q%3D%3D&verificationCode=0237 ------> 此处为body主体================================================================================================================================
请求构造器允许用户快速创建任何类型的http请求。http请求分为4个部分,分别是:
(1)、Method:请求方法
(2)、URL:请求网址;
(3)、Header:起始行;
(4)、body:主体
-------------------------------------------------------------------------------------------------------------------
===================================================================================================================================
(1)、Method:请求方法;使用下来菜单,选择请求方法,请求体编辑器根据请求方法的变化而作相应改变,即编辑区域而不同(get方法时body标签置灰(禁用))。
===========================================================================================================================
(2)、URL:请求网址;输入请求网址,然后在数据编辑器中输入URL参数,也可以单独添加键值对;如果URL已经有了参数,URL会自动拆分键值对显示。
PS:params:参数; query:查询; query params:查询参数;
示例:豆瓣网中查询:倚天屠龙记
可以通过鼠标右击方发,转编码(16进制的转换):
PS:url中如果带参数,post会自动转换到params中;params中输入参数,postman也会自动带入到URL中;
==============================================================================================================================
(3)、headers:起始行;
下面为get方法,并带有参数GET https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=sitehao123&wd=%E4%B8%AD%E5%9B%BD&rsv_pq=ee5e88db00155eb1&rsv_t=9b46NVmtUvhHk8NuPqytTgFcpScJZfmNOSxhFBaAu5rlcjCsQ9PfON8N98xNepLuQQ&rqlang=cn&rsv_enter=0&rsv_dl=tb&rsv_sug3=10&rsv_sug1=1&rsv_sug7=001&prefixsug=%25E4%25B8%25AD%25E5%259B%25BD&rsp=8&rsv_sug9=es_0_1&inputT=10643&rsv_sug4=12203&rsv_sug=9 HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Referer: https://www.baidu.com/?tn=sitehao123&H123Tmp=nunew11
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: BIDUPSID=1655D38E3EB9FAF984C3D838C40375AC; PSTM=1564563068; BD_UPN=12314553; BAIDUID=8B7CDF0DBB1D8B4D8DC4288AE32C655B:FG=1; ispeed_lsm=2; MCITY=-%3A; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BDSFRCVID=7AKsJeCCxG3e2tjwgnO1j79umibdsgZhD6873J; H_BDCLCKID_SF=tbAD_CKKf-3bfTuGDJOqKn0thxtX2bjMfbTf_p7F5l8-hCQXDPjf-n-shxTw-lQCMJ7PBfQaKqcxOKQphPbm5nIXQ48qbpbjb2oiLInN3KJm_UK9bT3v5Duy-tQ42-biW2tH2Mbdax7P_IoG2Mn8M4bb3qOpBtQmJeTxoUJ25DnJhhCGe6D2e5Q3jNLsbtQb26r-3--8-bTVHRDk5-Qo-4_eqxby26Pf0m3eaJ5n0-nnhnK45-6bbPCgDfCfqRQL2CrbQb3u2p--bK0Ry66jK4JKDG0tJ6OP; H_PS_PSSID=1469_21080_30211_30071_26350; H_PS_645EC=881dEMXJjSRsjFsceTvx5SWR2G%2FilqMyfp6iGiw%2BDfeUUG0wTEM81HCuM8v1K4C3CQ; delPer=0; BD_CK_SAM=1; PSINO=5; BDSVRTM=113
注意:浏览器可以在get方法中把数据传给服务器,数据放在URL的?后面;百度搜索中,查询字符串以名=值这样的形式出现,多个名值之间用&分隔开;
header选项卡,将显示headers键值编辑器。用户可以将任何字符串设置为头名称。在输入框中输入文字时系统会自动匹配http header key的建议(自动弹出);
=============================================================================================================
(4)、body:请求体。postman允许用户发送任何类型的http请求。请求体一般有4个区域,分别对应不同的请求格式。
当通过http发送请求时,服务器可能会期望一个content——type头。允许服务器正确的解析主体。
对于form-date以及urlencoded的请求类型,postman会自动附加正确的头部类型;这样就不要设置了,postman没有为binary(二进制)类型请求体设置任何类型;
示例;
application/x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)另外一种常见的媒体格式是上传文件之时使用的:multipart/form-data : 需要在表单中进行文件上传时,就需要使用该格式
Content-Type:即是Internet Media Type,互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息。例如:Content-Type: application/x-www-form-urlencoded常见的媒体格式类型如下:text/html : HTML格式text/plain :纯文本格式 text/xml : XML格式image/gif :gif图片格式 image/jpeg :jpg图片格式 image/png:png图片格式以application开头的媒体格式类型:application/xhtml+xml :XHTML格式application/xml : XML数据格式application/atom+xml :Atom XML聚合格式 application/json : JSON数据格式application/pdf :pdf格式 application/msword : Word文档格式application/octet-stream : 二进制流数据(如常见的文件下载)application/x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)另外一种常见的媒体格式是上传文件之时使用的:multipart/form-data : 需要在表单中进行文件上传时,就需要使用该格式
(一)、raw类型:raw类型请求体,可以用来发送任何格式的文本文件;如text、json、JavaScript、xml、html等。一般用来发送json格式的请求体,
用户可以自定义raw请求体的内容类型;
PS:CTRL+B组合键可以自动美化json或者xml的内容;
(二)、binary:二进制类型请求体,允许用户发送不能输入的内容,如图像、音频、视频等文件以及文本文件。
PS:注意:postman中不存储任何文件(html5规范规定),每次上传文件都要重新附加一个文件,哪怕通过历史或者集合重新请求,也要重新导入。
(三)、form-data :是web表单用来传输数据的默认编码,模拟了在网站上填写表单并提交的一个过程;也可以把文件附件到一个健上;
可以输入键值对;需要在表单中进行文件上传时,可以需要使用该格式。
PS:postman不允许一次上次多个文件,且每一个文件都有自己的content-type;
(四)、x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)
===============================================================================================================================
(5)、cookies:单击“send”右下方的“cookies”,可以打开“manage cookies”窗口设置cookie。即可以增加、删除、对应的cookies;
下面为get方法,并带有参数GET https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=sitehao123&wd=%E4%B8%AD%E5%9B%BD&rsv_pq=ee5e88db00155eb1&rsv_t=9b46NVmtUvhHk8NuPqytTgFcpScJZfmNOSxhFBaAu5rlcjCsQ9PfON8N98xNepLuQQ&rqlang=cn&rsv_enter=0&rsv_dl=tb&rsv_sug3=10&rsv_sug1=1&rsv_sug7=001&prefixsug=%25E4%25B8%25AD%25E5%259B%25BD&rsp=8&rsv_sug9=es_0_1&inputT=10643&rsv_sug4=12203&rsv_sug=9 HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Referer: https://www.baidu.com/?tn=sitehao123&H123Tmp=nunew11
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: BIDUPSID=1655D38E3EB9FAF984C3D838C40375AC; PSTM=1564563068; BD_UPN=12314553; BAIDUID=8B7CDF0DBB1D8B4D8DC4288AE32C655B:FG=1; ispeed_lsm=2; MCITY=-%3A; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BDSFRCVID=7AKsJeCCxG3e2tjwgnO1j79umibdsgZhD6873J; H_BDCLCKID_SF=tbAD_CKKf-3bfTuGDJOqKn0thxtX2bjMfbTf_p7F5l8-hCQXDPjf-n-shxTw-lQCMJ7PBfQaKqcxOKQphPbm5nIXQ48qbpbjb2oiLInN3KJm_UK9bT3v5Duy-tQ42-biW2tH2Mbdax7P_IoG2Mn8M4bb3qOpBtQmJeTxoUJ25DnJhhCGe6D2e5Q3jNLsbtQb26r-3--8-bTVHRDk5-Qo-4_eqxby26Pf0m3eaJ5n0-nnhnK45-6bbPCgDfCfqRQL2CrbQb3u2p--bK0Ry66jK4JKDG0tJ6OP; H_PS_PSSID=1469_21080_30211_30071_26350; H_PS_645EC=881dEMXJjSRsjFsceTvx5SWR2G%2FilqMyfp6iGiw%2BDfeUUG0wTEM81HCuM8v1K4C3CQ; delPer=0; BD_CK_SAM=1; PSINO=5; BDSVRTM=113注意:浏览器可以在get方法中把数据传给服务器,数据放在URL的?后面;百度搜索中,查询字符串以名=值这样的形式出现,多个名值之间用&分隔开;下面为post方法:POST https://anp.njpji.cn/un_manager/user/toLogin HTTP/1.1
Host: anp.njpji.cn
Connection: keep-alive
Content-Length: 85
Accept: */*
Origin: https://anp.njpji.cn
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Referer: https://anp.njpji.cn/un_manager/views/session/login.html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: Hm_lvt_70a44149803685eae3a9163f23ea34b7=1566289322,1566346318; JSESSIONID=5C305287359661147AD9C5570451A7E8username=7droqslNzQg%3D&password=Jrrw3HiJ%2BArijSvr3jrq1Q%3D%3D&verificationCode=0237
===========================================================================================================================
(6)、header presets(头预置):即保存一些常用的headers。在headers选项卡下,可以单击presets,从下拉框中选择一个预置的header;
postman——基础操作——API请求与响应——构造器相关推荐
- 在使用postman中操作api接口测试403解决方法
在使用postman中操作api接口测试403解决方法 参考文章: (1)在使用postman中操作api接口测试403解决方法 (2)https://www.cnblogs.com/xiaoyayu ...
- HTTP基础知识---http请求与响应
HTTP的请求报文 请求行包括三个部分:请求方法.请求地址.和版本及协议,以及CRLF(\R\N)结束 HTTP1.1定义八种的方法:GET POST PUT DELETE PATCH HEAD OP ...
- app基础操作api
前置代码 # This sample code uses the Appium python client # pip install Appium-Python-Client # Then you ...
- 软件测试笔记_15_Appium自动化测试框架、操作API
移动端Appium等价于web端selenium 一.Appium介绍 Appium 移动端自动化测试框架 用于测试原生应用(纯java).移动端网页应用(html css)和混合型应用(java h ...
- Spring Boot 2.x基础教程:如何扩展XML格式的请求和响应
在之前的所有Spring Boot教程中,我们都只提到和用到了针对HTML和JSON格式的请求与响应处理.那么对于XML格式的请求要如何快速的在Controller中包装成对象,以及如何以XML的格式 ...
- postman响应html,Postman工具——请求与响应(示例代码)
两个内容: Request 请求和 Response 响应,下面就开始了. 一.Request 请求 Request 请求,我们只介绍常用的四种:GET.POST.PUT.DELETE,其他类型的就不 ...
- [Postman]排除API请求(9)
可能存在API无法运行或出现意外行为的情况.如果您没有收到任何回复,邮递员将显示有关连接服务器时出错的消息. 有关错误可能原因的更多详细信息,请打开Postman Console.它有关于故障的详细信 ...
- thinkphp5基本的一些操作/API友好/获取请求信息(Request)/判断请求类型(GET...)/验证参数数据(Validate)/连接数据库/原生sql语句查询
文章目录 一.API友好 1.举两个thinkphp5关于API友好的例子 (1)数据输出 (2)错误调试Trace 二.获取请求信息(Request) 1.获取URL信息 2.获取 模块/控制器/操 ...
- 自学Python第二十二天- Django框架(一)创建项目、APP、快速上手、请求和响应流程、模板、数据库操作
Django 框架是一个基于 python 的重量级的 web 开发框架,现今很多大公司大项目都是使用 Django 框架.采用了 MVC(model view controller) 的框架模式,p ...
- Kudu入门和API基础操作
Kudu入门和API基础操作 文章目录 Kudu入门和API基础操作 为什么使用Kudu作为存储介质 1. Kudu介绍 1.1 背景介绍 1.2 新的硬件设备 1.3 Kudu是什么 1.4 Kud ...
最新文章
- “强化学习之父”萨顿:预测学习马上要火,AI将帮我们理解人类意识
- 提升权限_Azure权限提升漏洞
- VMware Workstation三种网络连接模式说明(Bridged,NAT,Host-only networking)
- js截屏 video_js获取video任意时间的画面截图
- 在eclipse中如何查看JAVA JDK的源代码
- Qt QWidget控件透明动画实现
- 磁盘空间去向不明的问题
- linux tr命令完整,linux tr命令详解
- 科目三大路考8个驾驶技巧
- jquery 取值 数值_jQuery – 使用正则表达式获取数据值
- java多态机制优点_java面向对象多态性有什么好处?能说的简单易懂点,最好有代码实现结果信息,麻烦各位java大神回答一下?...
- java回调函数机制
- 制作粉色少女系列 生日快乐祝福网页(HTML+CSS+JS)
- 引物设计-Primer6.0
- 手指滑动控制系统全局音量的程序(上)
- NOI题库练习1.5(07)
- TFS2010安装全过程
- 基于TensorRT和onnxruntime下pytorch的Bert模型加速对比实践
- nuc8 黑苹果_NUC Hades Canyon (NUC8) 黑苹果(Hackintosh)安装指南
- 海龟作图python小猪佩奇_python海龟做图20秒完成小猪佩奇,附源码!
热门文章
- 代码没问题但运行不出来
- html5 新增input类型,html5新增的input类型
- mysql储存长文本_mysql 存储长文本
- 伊利诺伊大学香槟分校计算机工程,伊利诺伊大学香槟分校计算机工程排名第8(2020年TFE美国排名)...
- 终止python程序的死循环_终的解释|终的意思|汉典“终”字的基本解释
- 工作学习总结-angular中的安全导航符?.和ts中的非空断言操作符!.
- [转载]主流漫游技术-OKC802.11r介绍
- 我能取得成就的原因和不足之处
- xml-rpc是个什么东东?
- 深度清理电脑垃圾软件 如何深度清理电脑垃圾