object_patch.js 1.4 KB

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