Commit f8fdf32c by jiaqiying

request_main 兼容不同的headers content_type和mimitype特殊字段

parent 7220dd74
...@@ -9,23 +9,43 @@ from config import * ...@@ -9,23 +9,43 @@ from config import *
def request_main(url, headers, method, data): def request_main(url, headers, method, data):
"""封装requests的通用请求方法""" """封装requests的通用请求方法"""
res = None res = None
if headers == None or headers == {} or headers == "": def request_by_method(method, headers):
# 如果传的headers为空,使用各自产品的通用headers inner_res = None
headers = get_headers() try:
header_content_type = headers["Content-Type"] header_content_type = headers["Content-Type"]
except KeyError:
header_content_type = headers["mimeType"]
try: try:
if method.upper() == "GET": if method.upper() == "GET":
res = requests.get(url=url, headers=headers, params=data) inner_res = requests.get(url=url, headers=headers, params=data)
elif method.upper() == "POST": elif method.upper() == "POST":
if header_content_type in ["application/x-www-form-urlencoded"]: if header_content_type == "application/json":
res = requests.post(url=url, headers=headers, data=data) inner_res = requests.post(url=url, headers=headers, data=json.dumps(data))
elif header_content_type == "application/json": elif header_content_type in ["application/x-www-form-urlencoded"]:
res = requests.post(url=url, headers=headers, data=json.dumps(data)) inner_res = requests.post(url=url, headers=headers, data=data)
return inner_res
except Exception as e: except Exception as e:
logging.log(str(e)) logging.log(str(e))
raise Exception raise Exception
if headers == None or headers == {} or headers == "":
# 如果传的headers为空,使用各自产品的通用headers
headers = get_headers()
try:
res = request_by_method(method, headers)
except requests.exceptions.ConnectionError as e:
logging.log(str(e))
except requests.exceptions.RequestException as e:
logging.log(str(e))
if "mimeType" in headers.keys():
headers['mimeType'] = "application/x-www-form-urlencoded"
else:
headers['Content-Type'] = "application/x-www-form-urlencoded"
try:
res = request_by_method(method, headers)
except requests.exceptions.RequestException as e:
logging.log(str(e))
if res != None: if res != None:
return res.json() return res.json()
return res return res
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment