抖音小程序C端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 line
3.0 KiB

  1. const config = require("../config/config.js");
  2. class HttpBasics {
  3. constructor(address) {
  4. if (address) {
  5. this.address = address;
  6. }
  7. }
  8. /**
  9. * 配置
  10. */
  11. config = config;
  12. /**
  13. * 请求路径前缀
  14. */
  15. address ='https://ctest.malls.iformall.com/C/api';//测试
  16. // address ='https://c.jcwise.cn/tt/api';//生产
  17. /**
  18. * 请求头
  19. */
  20. headers = {
  21. "Content-Type": "application/json;charset=UTF-8",
  22. token: "",
  23. // token:"3ab2afa2-f704-4086-b6e5-ad0715c7e2a1:1027:tt-cuser"
  24. };
  25. /**
  26. * 设置token
  27. * @param {*} token
  28. */
  29. setToken(token) {
  30. this.headers.token = token;
  31. }
  32. /**
  33. * 获取数据
  34. * @param {url,data,headers} param0
  35. */
  36. get({ url, data, headers }) {
  37. headers = { ...this.headers, ...headers };
  38. url = `${this.address}${url}`;
  39. return new Promise((resolve, reject) => {
  40. tt.request({
  41. url: url,
  42. header: headers,
  43. data: data,
  44. method: "get",
  45. success: res => {
  46. this.responseMap(res, resolve, reject);
  47. },
  48. fail: err => {
  49. console.log(err)
  50. if (err.errMsg == 'request:fail timeout') {
  51. err.errMsg = '请求超时,请检查您的网络设置!'
  52. } else if (err.errMsg == 'request:fail'){
  53. err.errMsg = '未检查到您的网络,请检查您的网络设置!'
  54. } else if (err.errMsg == 'request:fail request connect error') {
  55. err.errMsg = '连接失败'
  56. }
  57. reject(err);
  58. }
  59. });
  60. });
  61. }
  62. /**
  63. * 提交数据
  64. * @param {url,data,headers} param0
  65. */
  66. post({ url, data, headers }) {
  67. headers = { ...this.headers, ...headers };
  68. url = `${this.address}${url}`;
  69. return new Promise((resolve, reject) => {
  70. tt.request({
  71. url: url,
  72. header: headers,
  73. data: data,
  74. method: "post",
  75. success: res => {
  76. this.responseMap(res, resolve, reject);
  77. },
  78. fail: err => {
  79. if (err.errMsg == 'request:fail timeout') {
  80. err.errMsg = '请求超时,请检查您的网络设置!'
  81. } else if (err.errMsg == 'request:fail') {
  82. err.errMsg = '未检查到您的网络,请检查您的网络设置!'
  83. } else if (err.errMsg == 'request:fail request connect error') {
  84. err.errMsg = '连接失败'
  85. }
  86. reject(err);
  87. },
  88. complete: res => {}
  89. });
  90. });
  91. }
  92. /**
  93. * 过滤 请求信息
  94. * @param {*} res
  95. * @param {*} resolve
  96. * @param {*} reject
  97. */
  98. responseMap = (res, resolve, reject) => {
  99. // 网络状态码200
  100. if (res.statusCode == 200) {
  101. // 服务器code 200 成功
  102. if (res.data.code == 200) {
  103. resolve(res.data);
  104. } else if (res.data.code == 1052) {
  105. tt.reLaunch({
  106. url: '/pages/index/index'
  107. })
  108. } else {
  109. reject(res.data);
  110. }
  111. } else {
  112. console.log("请求出错:", res);
  113. reject(res.data);
  114. }
  115. };
  116. /** 日志 */
  117. log(url, body, headers) {}
  118. }
  119. module.exports = new HttpBasics();