标签:代理 json格式 修改 request 通过 ase 转换 dns serve
Demo
class TestEncode:
def test_api(self):
req = ApiRequest()
# 请求的数据
req_data = {
"schema": "http",
"encoding": "base64", # 这个字段根据数据格式而定
"method": "get",
"url": "http://1.1.1.1/topics.txt",
"headers": None
}
r = req.send(req_data) # 将数据发送到已封装的函数,返回一个json格式的数据
class ApiRequest:
def send(self, data: dict):
if data["schema"] == "http":
# 把host修改为IP,并附加到 host header
# 环境对应关系
env = {
"test/dev.com": {
"dev": "10.10.10.1",
"test": "10.10.10.2",
},
"default": "test",
}
# 将url中的域名转换为Ip
data["url"] = str(data["url"]).replace("test/dev.com", env["test/dev.com"][env["default"]])
data["headers"]["Host"] = "test/dev.com" # 通过将Host绑上域名,服务器会认为是通过域名进行访问
res = requests.request(data["method"], data["url"], headers=data["headers"])
# 通过以上方法或类似的思想,通过Ip控制,访问不同的环境
标签:代理 json格式 修改 request 通过 ase 转换 dns serve
原文地址:https://www.cnblogs.com/chenri/p/12683470.html