copy.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. const axios = require("axios");
  2. module.exports = copy;
  3. /**
  4. * 复制文件
  5. * @param {String} dst 目标路径
  6. * @param {String} id 文件id
  7. * @param {String} src_dir 源路径
  8. * @param {Boolean} is_file 是否为文件
  9. * @param {String} cookie 请求Cookie
  10. * @returns {Boolean}
  11. */
  12. async function copy(dst, id, src_dir, is_file, cookie) {
  13. var url = "https://mo.own-cloud.cn/api/v3/object/copy";
  14. var headers = {
  15. 'cookie': cookie,
  16. 'referer': 'https://mo.own-cloud.cn/',
  17. 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36',
  18. }
  19. if (is_file) {
  20. var data = {
  21. dst: dst,
  22. src: {
  23. items: [id],
  24. dirs: []
  25. },
  26. src_dir: src_dir
  27. }
  28. } else {
  29. var data = {
  30. dst: dst,
  31. src: {
  32. items: [],
  33. dirs: [id]
  34. },
  35. src_dir: src_dir
  36. }
  37. }
  38. try {
  39. var res = await axios.post(url, data, {
  40. headers: headers
  41. })
  42. } catch {
  43. console.log("请求失败!");
  44. return false;
  45. }
  46. return res.data.code == 0;
  47. }