axios.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. const axios = require('axios')
  2. const https = require('https')
  3. const coba = require('./coba')
  4. const { PRODUCTION } = require('./constanta')
  5. /**
  6. *
  7. * @param url {string}
  8. * @param token {string | null?}
  9. * @returns {Promise<any>}
  10. */
  11. exports.get = async (url, token = null) => {
  12. let response
  13. if (coba.decrypt(process.env.CXQSB) === PRODUCTION && token) {
  14. response = await axios.get(url, {
  15. headers: {
  16. Authorization: `Bearer ${token}`,
  17. Accept: 'application/json'
  18. }
  19. })
  20. } else {
  21. let token = process.env.XNX1Q
  22. response = await axios.get(url, {
  23. headers: {
  24. Authorization: `Bearer ${coba.decrypt(token)}`,
  25. Accept: 'application/json'
  26. },
  27. httpsAgent: new https.Agent({
  28. rejectUnauthorized: false
  29. })
  30. })
  31. }
  32. return response.data
  33. }
  34. /**
  35. *
  36. * @param url
  37. * @param data
  38. * @param token {string | null?}
  39. * @param config {any?}
  40. * @returns {Promise<any>}
  41. */
  42. exports.post = async (url, data, token= null, config = {}) => {
  43. let response
  44. const agent = new https.Agent({
  45. rejectUnauthorized: false,
  46. })
  47. if (coba.decrypt(process.env.CXQSB) === PRODUCTION && token) {
  48. response = await axios.post(url, data,{
  49. headers: {
  50. Authorization: `Bearer ${token}`,
  51. Accept: 'application/json',
  52. ...config
  53. },
  54. httpsAgent: agent
  55. })
  56. } else {
  57. let token = process.env.XNX1Q
  58. response = await axios.post(url, data, {
  59. headers: {
  60. Authorization: `Bearer ${coba.decrypt(token)}`,
  61. Accept: 'application/json',
  62. ...config
  63. },
  64. httpsAgent: new https.Agent({
  65. rejectUnauthorized: false
  66. })
  67. })
  68. }
  69. return response.data
  70. }