当前位置: 首页 > 工具软件 > Requests(PHP) > 使用案例 >

requests

颛孙飞
2023-12-01

“”"
五、requests
1、什么是接口:用来传输数据的通道
examples


41

data3=“41”
data2=“examples”
data1=“{}{}”,format(data2,data3)

2、http请求的接口
https://www.ketangpai.com/#/main/classDetail?courseid=MDAwMDAwMDAwMLOGtZWGz6-yhdtyoQ&courserole=1&submodulename=0
拆解:
https://:协议
www.ketangpai.com:域名
/#/main/classDetail:接口地址
courseid=MDAwMDAwMDAwMLOGtZWGz6-yhdtyoQ&courserole=1&submodulename=0:参数

3、http请求的三要素
1、请求地址
2、请求方法
3、请求数据

4、requests请求接口
1、安装requests
pip install requests

2、发一个get请求
会将请求参数自动拼接到接口地址后面
data = {“key1”:“val1”,“key2”:“val2”}
res = requests.get(url=“http://httpbin.org/get?key1=val1&key2=val2”)
res = requests.get(url=“http://httpbin.org”,params=data)

3、post请求
res = requests.post(url=“http://httpbin.org/post”,data=data)
data:默认使用{‘Content-Type’: ‘application/x-www-form-urlencoded’}
如果设置了请求头的Content-Type,那么就按照设置的编码方法进行传参
json:默认使用{‘Content-Type’: ‘application/json’}
如果设置了请求头的Content-Type,那么就按照设置的编码方法进行传参

4、如何发送https请求
res = requests.post(url=“http://httpbin.org/post”,data=data,verify=False)

面试题
get与post的区别
安全性:
1、get传参放在接口地址后面(浏览器地址后面),相对来说不那么安全
2、post请求数据藏起来的,放在请求体里面(body)
使用场景
3、get请求一般用于获取数据
4、post请求用于提交数据
参数长度
5、get请求一般参数有长度限制,后端服务器做的限制
6、post请求参数也有长度限制,后端服务器做的限制(post参数长度一般大于get)
幂等性
7、幂等性:同一个接口,同一个参数请求N遍,返回结果都不会变
get请求都是幂等的
post请求一般是不幂等的(支付、注册、提现这类接口要做幂等处理)

http与https的区别
1、http是明文传输,https传输加密的
2、http默认80端口,https默认443端口
3、https需要CA证书,一般证书要收费
4、http是无状态的简单的协议
5、https有状态的,需要验证身份
6、HTTPS = http+加密+ssl认证
“”"

import requests
import pprint

head={‘Content-Type’: ‘application/x-www-form-urlencoded’}

head={‘Content-Type’: ‘application/json’}
data = {“key1”:“val1”,“key2”:{“key3”:“val3”}}
res = requests.post(url=“http://httpbin.org/post”,data=data)

res = requests.post(url=“http://httpbin.org/post”,json=data)

pprint.pprint(res.json())

res = requests.post(url=“http://httpbin.org/post”,data=data,verify=False)

“”"
get请求
data = {“key1”:“val1”,“key2”:“val2”}

res = requests.get(url=“http://httpbin.org/get?key1=val1&key2=val2”)

res = requests.get(url=“http://httpbin.org/get”,params=data)
pprint.pprint(res.json())
“”"

 类似资料: