file.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { baseUrl, apiPath, tenantId } from '@/sheep/config';
  2. import request from '@/sheep/request';
  3. const FileApi = {
  4. // 上传文件
  5. uploadFile: (file) => {
  6. // TODO 芋艿:访问令牌的接入;
  7. const token = uni.getStorageSync('token');
  8. uni.showLoading({
  9. title: '上传中',
  10. });
  11. return new Promise((resolve, reject) => {
  12. uni.uploadFile({
  13. url: baseUrl + apiPath + '/infra/file/upload',
  14. filePath: file,
  15. name: 'file',
  16. header: {
  17. // Accept: 'text/json',
  18. Accept: '*/*',
  19. 'tenant-id': tenantId,
  20. // Authorization: 'Bearer test247',
  21. },
  22. success: (uploadFileRes) => {
  23. let result = JSON.parse(uploadFileRes.data);
  24. if (result.error === 1) {
  25. uni.showToast({
  26. icon: 'none',
  27. title: result.msg,
  28. });
  29. } else {
  30. return resolve(result);
  31. }
  32. },
  33. fail: (error) => {
  34. console.log('上传失败:', error);
  35. return resolve(false);
  36. },
  37. complete: () => {
  38. uni.hideLoading();
  39. },
  40. });
  41. });
  42. },
  43. // 获取文件预签名地址
  44. getFilePresignedUrl: (path) => {
  45. return request({
  46. url: '/infra/file/presigned-url',
  47. method: 'GET',
  48. params: {
  49. path,
  50. },
  51. });
  52. },
  53. // 创建文件
  54. createFile: (data) => {
  55. return request({
  56. url: '/infra/file/create', // 请求的 URL
  57. method: 'POST', // 请求方法
  58. data: data, // 要发送的数据
  59. });
  60. },
  61. };
  62. export default FileApi;