
HTTP请求工具是一个开发小工具-HTTP请求测试工具,仅支持GET、POST请求2中方式, 请求BODY仅支持 JSON字符串。相信很多从事前端开发的人都可能会知道这类软件,它可以帮助我们很好的实现端口调试工作。
做网站开发时,经常需要发送请求来测试自己的代码是否OK,这时候模拟发送http请求的工具就起到了很大的作用。

import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import *
from Ui_pyqt5 import Ui_MainWindow
from PyQt5.QtCore import QCoreApplication
import requests
import json
class MainLogic(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
# 继承父类
super(MainLogic, self).__init__()
# 构造UI
self.setupUi(self)
# 按钮点击事件
def btnClick(self):
url = self.txt_url.toPlainText() # 获取请求URL
request_type = self.request_type.currentText()
request_params = self.request_body.toPlainText() # 获取请求body
request_headers = self.request_header.toPlainText().split("\n") # 获取请求request
params = {}
headers = {
"content-type": "application/x-www-form-urlencoded;",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"
}
try:
# 请求header
for h in request_headers:
if h =='' or h[0 : h.find(":")] =='' or h[0 : h.find(":")].lower() == 'content-length':
continue
headers[h[0 : h.find(":")]] = h[ h.find(":")+1 :].strip()
if request_params:
params = json.loads(request_params)
if url =='' :
return True
# 判断是否HTTP HTTPS开头
if url[0:7] !='http://' and url[0:8] != 'https://':
url = "http://" + url
if request_type == 'GET':
result = requests.get(url, headers = headers, data = params )
elif request_type =='POST':
result = requests.post(url, headers = headers, json = params )
else:
return True
result.encoding = result.apparent_encoding
# 获取返回内容
outputText = result.text
# 返回格式为JSON时,格式化输出
if result.headers['Content-Type'].find("application/json") > -1:
outputText = json.dumps(result.json(), sort_keys=False, indent=4, separators=(', ', ': ') ,ensure_ascii =False)
# 输出结果到UI
self.response.setPlainText( outputText )
self.respon_code.setText(str(result.status_code))
except Exception as ex:
self.respon_code.setText("")
self.response.setPlainText("请求ERROR:" + str(ex) )
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv )
# QApplication.setQuitOnLastWindowClosed(False)
main = MainLogic()
main.show()
sys.exit(app.exec_())
开发者其他应用
github离线安装包64位版
编程辅助
120.2M
V2.9.11官方最新版(github desktop)
TortoiseSVN 1.14.9中文最新版
编程辅助
34.3M
正式版
Adobe AIR
编程辅助
7.1M
V33.1.1.932 官方最新版
抓包修改工具(Charles)
编程辅助
56.5M
v4.6.4 无限制版
Java SE Runtime(jre8 64位版)
编程辅助
80.8M
v8.0.341 x64 官方版
Node.js x64版
编程辅助
29.9M
v18.14.1.0 官方版
分布式版本管理系统(Mercurial)
编程辅助
21.8M
v6.2.2 官方安装版
版本管理工具(TortoiseSVN)
编程辅助
18.6M
v1.14.2.29370 官方中文版32位
TortoiseSVN(带中文语言文件)
编程辅助
25.2M
v1.14.2.29370 官方最新版【x64】
360加固助手
编程辅助
101M
v3.3.0.3 官方最新版
支持( 0 ) 盖楼(回复)