utils.py 936 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # -*- coding: utf-8 -*-
  2. # !/usr/bin/env python
  3. import hashlib
  4. import requests
  5. import logging
  6. logger = logging.getLogger(__name__)
  7. def send_request(url,mode='POST',**kwargs):
  8. """
  9. 主动发送HTTP请求获取数据 密钥及签名
  10. :return:
  11. """
  12. headers = {"Content-Type": "application/json;charset=utf-8"}
  13. token = kwargs.pop("token", None)
  14. if token:headers.update({"Authorization": "Basic {}".format(token)})
  15. timeout = kwargs.pop("timeout", 5)
  16. data = kwargs
  17. try:
  18. if mode == 'POST':
  19. response = requests.post(url=url, json=data, headers=headers, timeout=timeout)
  20. else:
  21. response = requests.get(url=url, headers=headers, timeout=timeout)
  22. except requests.Timeout:
  23. return dict()
  24. except Exception as e:
  25. logger.exception(e)
  26. return dict()
  27. if response.status_code != 200:
  28. return dict()
  29. return response.json()