HttpKit.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. const axios = require('axios-https-proxy-fix')
  2. const MyKit = require('./MyKit.js')
  3. class HttpKit {}
  4. const isDev = process.env.USER === 'skyfffire'
  5. const opts = {}
  6. if (isDev) {
  7. opts.host = '127.0.0.1'
  8. opts.port = 9080
  9. }
  10. HttpKit.request = async function (url, data, method, headers={}) {
  11. const params = {}
  12. params.timeout = 3 * 1000
  13. params.method = method
  14. params.url = url
  15. params.data = data
  16. params.headers = headers
  17. if (isDev) params.proxy = JSON.parse(JSON.stringify(opts))
  18. if (method === 'get') {
  19. return await axios.get(url, { proxy: params.proxy, headers: headers }).catch(error => Promise.reject({ rst: false, data: error.response.data }))
  20. } else if (method === 'post') {
  21. return await axios.post(url, data,{ proxy: params.proxy, headers: headers }).catch(error => Promise.reject({ rst: false, data: error.response.data }))
  22. } else {
  23. return await axios(params).catch(error => {
  24. Promise.reject({ rst: false, data: error.response.data })
  25. })
  26. }
  27. }
  28. HttpKit.post = async function(url, data, headers) {
  29. try {
  30. return await HttpKit.request(url, data, 'post', headers)
  31. } catch (e) {
  32. const msg = 'Caught post error: ' + JSON.stringify(e) + ', ' + url
  33. if (msg.indexOf('cannot') === -1
  34. && msg.indexOf('timeout') === -1
  35. && msg.indexOf('{}') === -1
  36. && msg.indexOf('server error') === -1) {
  37. let time = MyKit.getTimeByMillisecond(new Date().getTime())
  38. console.error(time, msg)
  39. }
  40. return e
  41. }
  42. }
  43. HttpKit.get = async function(url, headers) {
  44. try {
  45. return await HttpKit.request(url, {}, 'get', headers)
  46. } catch (e) {
  47. const msg = 'Caught get error: ' + JSON.stringify(e) + ', ' + url
  48. if (msg.indexOf('cannot') === -1
  49. && msg.indexOf('timeout') === -1
  50. && msg.indexOf('{}') === -1
  51. && msg.indexOf('server error') === -1) {
  52. let time = MyKit.getTimeByMillisecond(new Date().getTime())
  53. console.error(time, msg)
  54. }
  55. return e
  56. }
  57. }
  58. module.exports = HttpKit