utils.http.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. const utils_1 = require("./utils");
  4. const utils_lang_1 = require("./utils.lang");
  5. const isStream = require('is-stream');
  6. /**
  7. * 是否能够使用 FormData 发送数据
  8. * @param {any} data - 待发送的数据
  9. */
  10. function canUseFormdata(data) {
  11. let enable = true;
  12. for (const key in data) {
  13. const value = data[key];
  14. if (!isStream(value) && (utils_1.isNodeEnv() && !Buffer.isBuffer(value)) && !utils_lang_1.isString(value) && !utils_lang_1.isNumber(value)) {
  15. enable = false;
  16. break;
  17. }
  18. }
  19. return enable;
  20. }
  21. exports.canUseFormdata = canUseFormdata;
  22. /**
  23. * 是否一定要通过 FormData 发送数据
  24. * 如果有 Buffer 和 Stream 必须用 multipart/form-data,如果同时还含有
  25. * @param {any} data - 待发送的数据
  26. */
  27. function mustUseFormdata(data) {
  28. let must = false;
  29. for (const key in data) {
  30. const value = data[key];
  31. if ((utils_1.isNodeEnv() && Buffer.isBuffer(value)) || isStream(value)) {
  32. must = true;
  33. break;
  34. }
  35. }
  36. return must;
  37. }
  38. exports.mustUseFormdata = mustUseFormdata;