Python實(shí)現(xiàn)打印http請(qǐng)求信息
問(wèn)題
我們?cè)陂_(kāi)發(fā)過(guò)程中,為了快速驗(yàn)證接口,
經(jīng)常采用postman或者Python代碼先行驗(yàn)證的方式,確保接口正常,
在測(cè)試接口過(guò)程中偶爾會(huì)遇到接口異常,這時(shí)候要和打印完整的http請(qǐng)求,
幫助接口開(kāi)發(fā)人員確認(rèn)問(wèn)題;
方法
僅僅是打印出這些信息,很簡(jiǎn)單:
import requests
response = requests.post('http://httpbin.org/post', data={'key1':'value1'})
print(response.request.headers)
print(response.request.body)或者:
import requests
def pretty_print_POST(req):
print('{}\n{}\r\n{}\r\n\r\n{}'.format(
'-----------START-----------',
req.method + ' ' + req.url,
'\r\n'.join('{}: {}'.format(k, v) for k, v in req.headers.items()),
req.body,
))
req = requests.Request('POST','http://stackoverflow.com',headers={'X-Custom':'Test'},data='a=1&b=2')
prepared = req.prepare()
pretty_print_POST(prepared)
s = requests.Session()
resp = s.send(prepared)
print(resp.text)
但如果你想要在進(jìn)行請(qǐng)求之前對(duì)http頭和數(shù)據(jù)進(jìn)行操作,也是使用prepare:
from requests import Request, Session
s = Session()
req = Request('POST', url, data=data, headers=headers)
prepped = req.prepare()
# do something with prepped.body
prepped.body = 'No, I want exactly this as the body.'
# do something with prepped.headers
del prepped.headers['Content-Type']
resp = s.send(prepped,
stream=stream,
verify=verify,
proxies=proxies,
cert=cert,
timeout=timeout
)
print(resp.status_code)python 的庫(kù)的用法去對(duì)應(yīng)的庫(kù)的幫助文檔里去找,更為方便些;
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
django rest framework之請(qǐng)求與響應(yīng)(詳解)
下面小編就為大家?guī)?lái)一篇django rest framework之請(qǐng)求與響應(yīng)(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望對(duì)大家有所幫助2017-11-11
解決nohup執(zhí)行python程序log文件寫(xiě)入不及時(shí)的問(wèn)題
今天小編就為大家分享一篇解決nohup執(zhí)行python程序log文件寫(xiě)入不及時(shí)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
Python結(jié)合FastSAM實(shí)現(xiàn)圖像自動(dòng)標(biāo)注的完整指南
FastSAM是SAM的加速版本,能夠在保持較高精度的同時(shí)大幅提升處理速度,本文將詳細(xì)解析Python結(jié)合FastSAM實(shí)現(xiàn)圖像自動(dòng)標(biāo)注的代碼結(jié)構(gòu)、實(shí)現(xiàn)原理和使用方法,幫助讀者快速掌握?qǐng)D像自動(dòng)標(biāo)注的核心技術(shù)2025-10-10
python爬蟲(chóng)使用正則爬取網(wǎng)站的實(shí)現(xiàn)
這篇文章主要介紹了python爬蟲(chóng)使用正則爬取網(wǎng)站的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Python用requests-html爬取網(wǎng)頁(yè)的實(shí)現(xiàn)
本文主要介紹了Python用requests-html爬取網(wǎng)頁(yè)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
利用Pandas 創(chuàng)建空的DataFrame方法
下面小編就為大家分享一篇利用Pandas 創(chuàng)建空的DataFrame方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Python+PyQt5實(shí)現(xiàn)PDF轉(zhuǎn)圖片工具的深度解析
在當(dāng)今數(shù)字化時(shí)代,PDF文件已成為文檔交換的標(biāo)準(zhǔn)格式,本文將詳細(xì)介紹如何使用PyQt5創(chuàng)建一個(gè)功能完整的PDF轉(zhuǎn)圖片工具,有需要的小伙伴可以了解下2025-09-09

