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=5C305287359661147AD9C5570451A7E8

username=7droqslNzQg%3D&password=Jrrw3HiJ%2BArijSvr3jrq1Q%3D%3D&verificationCode=0237

 

 

 

 

 

===========================================================================================================================

 

 

 

(6)、header  presets(頭預置):即保存一些常用的headers。在headers選項卡下,可以單擊presets,從下拉框中選擇一個預置的header;

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM