如何快速发送post请求
因为我用的python语言,所以大家需要在本地安装python语言和pycharm,如何安装请自行查找教程,这里不做过多赘述
安装requests库
方式一:在本地的cmd环境下,使用pip install requests命令下载requests包,我这里已经下载了,大家自行下载
方式二:打开pycharm--setting--python Interpreter搜索requests下载,可以看到我已经下载了
requests用法
requests 包的使用方法非常简单和直观。
1.发送get请求
import requests
method = "get"
url = "http://api.example.com/data"
response = requests.request(method,url)
print(response.status_code)
print(response.json()) # 获取响应的 JSON 数据
2.发送post请求
import requests
method = "post"
url = "http://api.example.com/submit"
data = {"name": "John", "age": 25}
response = requests.request(method,url, data=data)
print(response.status_code)
print(response.text) # 获取响应的文本内容
3.发送带有请求头的请求
import requests
method = "get"
url = "http://api.example.com/data"
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.request(method,url, headers=headers)
print(response.status_code)
print(response.json())
4.处理会话
import requests
session = requests.Session()
session.headers.update({"User-Agent": "Mozilla/5.0"})
response1 = session.get("http://api.example.com/login")
response2 = session.post("http://api.example.com/submit", data={"name": "John"})
5.处理认证和 Cookie
import requests
url = "http://api.example.com/data"
response = requests.get(url, auth=("username", "password"))
print(response.status_code)
print(response.json())
# 或者使用 Cookie
cookies = {"session_id": "12345"}
response = requests.get(url, cookies=cookies)
6.文件上传
import requests
url = "http://api.example.com/upload"
files = {"file": open("data.txt", "rb")}
response = requests.post(url, files=files)
print(response.status_code)
print(response.text)
这些只是 requests 库的一些基本用法,大家可以参考requests官方文档查看更多的功能和选项
使用request库发送http请求
进入pycharm创建项目,创建python文件
第一步导入requests库
import requests
第二步准备好测试数据
url = "http://192.168.3.xx/zentaopms/www/index.php?m=user&f=login"
method = "post"
data = {"account":"xxx",
"password":"*****"}
这里我准备的是自己搭建的禅道,IP和账号密码就脱敏了,大家自行准备网站进行测试
第三步发送http请求
re = requests.request(method,url,json=data)
这里闹了一个乌龙,我先写的是(url,method,json=data),结果报错了,看了requests用法才发现,如果单独使用url,method这样传参的话,得先把method放在第一个参数。如果想把url放第一个参数,可以使用url=url,method=method这样。这里把请求传给re变量是为了方便后面查看结果。
第四步查看请求结果
print("禅道登录状态码是:",re.status_code)
print("禅道登录响应头是:",re.headers)
print("禅道登录响应类型是:",type(re.text))
print("禅道登录响应数据是:",re.text)
第五步查看返回结果