浏览代码

添加oss

lex 1 年之前
父节点
当前提交
f8008545c6

+ 42 - 27
src/components/col-upload-video/index.tsx

@@ -9,6 +9,7 @@ import iconUploader from '@common/images/icon_uploader_video.png'
 import iconUploadPoster from '@common/images/icon_upload_poster.png'
 import { postMessage } from '@/helpers/native-message'
 import { getOssUploadUrl, state } from '@/state'
+import { getUploadSign, onOnlyFileUpload } from '@/helpers/oss-file-upload'
 
 export default defineComponent({
   name: 'ColUploadVideo',
@@ -56,24 +57,33 @@ export default defineComponent({
         file.status = 'uploading'
         file.message = '上传中...'
         // 获取签名
-        const signUrl =
-          state.platformType === 'TEACHER'
-            ? '/api-teacher/getUploadSign'
-            : '/api-student/getUploadSign'
+        // const signUrl =
+        //   state.platformType === 'TEACHER'
+        //     ? '/api-teacher/getUploadSign'
+        //     : '/api-student/getUploadSign'
 
         const fileName = file.file.name.replaceAll(' ', '_')
         const key = new Date().getTime() + fileName
         console.log(file)
 
-        const res = await request.post(signUrl, {
-          data: {
-            filename: fileName,
-            bucketName: this.bucket,
-            postData: {
-              filename: fileName,
-              acl: 'public-read',
-              key: key
-            }
+        // const res = await request.post(signUrl, {
+        //   data: {
+        //     filename: fileName,
+        //     bucketName: this.bucket,
+        //     postData: {
+        //       filename: fileName,
+        //       acl: 'public-read',
+        //       key: key
+        //     }
+        //   }
+        // })
+        const { data } = await getUploadSign({
+          filename: key,
+          bucketName: this.bucket,
+          postData: {
+            filename: key,
+            acl: 'public-read',
+            key: key
           }
         })
         Toast.loading({
@@ -83,23 +93,28 @@ export default defineComponent({
           duration: 0
         })
         const obj = {
-          policy: res.data.policy,
-          signature: res.data.signature,
+          policy: data.policy,
+          signature: data.signature,
           key: key,
-          KSSAccessKeyId: res.data.kssAccessKeyId,
+          KSSAccessKeyId: data.kssAccessKeyId,
           acl: 'public-read',
-          name: fileName
-        }
-        const formData = new FormData()
-        for (const key in obj) {
-          formData.append(key, obj[key])
+          name: key,
+          file: file.file
         }
-        formData.append('file', file.file)
-        await umiRequest(getOssUploadUrl(this.bucket), {
-          method: 'POST',
-          data: formData
-        })
-        const uploadUrl = getOssUploadUrl(this.bucket) + key
+        const uploadUrl = await onOnlyFileUpload(
+          getOssUploadUrl(this.bucket),
+          obj
+        )
+        // const formData = new FormData()
+        // for (const key in obj) {
+        //   formData.append(key, obj[key])
+        // }
+        // formData.append('file', file.file)
+        // await umiRequest(getOssUploadUrl(this.bucket), {
+        //   method: 'POST',
+        //   data: formData
+        // })
+        // const uploadUrl = getOssUploadUrl(this.bucket) + key
         Toast.clear()
         this.$emit('update:modelValue', uploadUrl)
         // this.onUploadChange(uploadUrl)

+ 4 - 3
src/components/col-upload/index.tsx

@@ -130,8 +130,7 @@ export default defineComponent({
           postData: {
             filename: key,
             acl: 'public-read',
-            key: key,
-            unknowValueField: []
+            key: key
           }
         })
         Toast.loading({
@@ -146,8 +145,10 @@ export default defineComponent({
           key: key,
           KSSAccessKeyId: data.kssAccessKeyId,
           acl: 'public-read',
-          name: fileName
+          name: key,
+          file: file
         }
+        console.log(obj, 'obj')
         // const formData = new FormData()
         // for (const key in obj) {
         //   formData.append(key, obj[key])

+ 1 - 1
src/teacher/video-class/class-content.tsx

@@ -232,7 +232,7 @@ export default defineComponent({
               this.heightV = h
             }}
           >
-            <ColHeader />
+            <ColHeader border={false} />
           </TheSticky>
           <MusicAlbum
             offsetTop={this.heightV}

+ 21 - 14
src/tenant/music/music-detail/new-index.tsx

@@ -57,6 +57,7 @@ import Plyr from 'plyr'
 import 'plyr/dist/plyr.css'
 import Download from './download'
 import { getInstrumentName } from '@/constant/instruments'
+import { getUploadSign, onOnlyFileUpload } from '@/helpers/oss-file-upload'
 
 export default defineComponent({
   name: 'new-index',
@@ -187,19 +188,20 @@ export default defineComponent({
           new Date().getTime() + Math.ceil(Math.random() * 1000) + '.png'
         const keyTime = new Date().getTime() + fileName
         const obj = {
-          filename: fileName,
+          filename: keyTime,
           bucketName: 'cloud-coach',
           postData: {
-            filename: fileName,
+            filename: keyTime,
             acl: 'public-read',
             key: keyTime
           }
         }
 
-        const res = await request.post(state.platformApi + '/getUploadSign', {
-          data: obj
-        })
+        // const res = await request.post(state.platformApi + '/getUploadSign', {
+        //   data: obj
+        // })
 
+        const res = await getUploadSign(obj)
         Toast.loading({
           message: '加载中...',
           forbidClick: true,
@@ -215,19 +217,24 @@ export default defineComponent({
           acl: 'public-read',
           name: fileName
         }
-        for (const key in dataObj) {
-          formData.append(key, dataObj[key])
-        }
         const files = base64ToBlob(file)
-
-        formData.append('file', files, fileName)
         const ossUploadUrl = getOssUploadUrl('cloud-coach')
-        await umiRequest(ossUploadUrl, {
-          method: 'POST',
-          data: formData
+        const imgurl = await onOnlyFileUpload(ossUploadUrl, {
+          ...dataObj,
+          file: files
         })
+        // for (const key in dataObj) {
+        //   formData.append(key, dataObj[key])
+        // }
+
+        // formData.append('file', files, fileName)
+        // const ossUploadUrl = getOssUploadUrl('cloud-coach')
+        // await umiRequest(ossUploadUrl, {
+        //   method: 'POST',
+        //   data: formData
+        // })
         Toast.clear()
-        const imgurl = getOssUploadUrl('cloud-coach') + keyTime
+        // const imgurl = getOssUploadUrl('cloud-coach') + keyTime
 
         await request.post(state.platformApi + '/open/music/sheet/img', {
           data: { musicSheetId: musicDetail.value.id, musicImg: imgurl }

+ 24 - 15
src/views/music/music-detail/index.tsx

@@ -64,6 +64,7 @@ import Plyr from 'plyr'
 import 'plyr/dist/plyr.css'
 import Download from './download'
 import { getInstrumentName } from '@/constant/instruments'
+import { getUploadSign, onOnlyFileUpload } from '@/helpers/oss-file-upload'
 
 export const getAssetsHomeFile = (fileName: string) => {
   const path = `../component/images/${fileName}`
@@ -199,18 +200,20 @@ export default defineComponent({
           new Date().getTime() + Math.ceil(Math.random() * 1000) + '.png'
         const keyTime = new Date().getTime() + fileName
         const obj = {
-          filename: fileName,
+          filename: keyTime,
           bucketName: 'cloud-coach',
           postData: {
-            filename: fileName,
+            filename: keyTime,
             acl: 'public-read',
             key: keyTime
           }
         }
 
-        const res = await request.post(state.platformApi + '/getUploadSign', {
-          data: obj
-        })
+        // const res = await request.post(state.platformApi + '/getUploadSign', {
+        //   data: obj
+        // })
+
+        const res = await getUploadSign(obj)
 
         Toast.loading({
           message: '加载中...',
@@ -225,21 +228,27 @@ export default defineComponent({
           key: keyTime,
           KSSAccessKeyId: res.data.kssAccessKeyId,
           acl: 'public-read',
-          name: fileName
-        }
-        for (const key in dataObj) {
-          formData.append(key, dataObj[key])
+          name: keyTime
         }
         const files = base64ToBlob(file)
-
-        formData.append('file', files, fileName)
         const ossUploadUrl = getOssUploadUrl('cloud-coach')
-        await umiRequest(ossUploadUrl, {
-          method: 'POST',
-          data: formData
+        const imgurl = await onOnlyFileUpload(ossUploadUrl, {
+          ...dataObj,
+          file: files
         })
+        // for (const key in dataObj) {
+        //   formData.append(key, dataObj[key])
+        // }
+        // const files = base64ToBlob(file)
+
+        // formData.append('file', files, fileName)
+        // const ossUploadUrl = getOssUploadUrl('cloud-coach')
+        // await umiRequest(ossUploadUrl, {
+        //   method: 'POST',
+        //   data: formData
+        // })
         Toast.clear()
-        const imgurl = getOssUploadUrl('cloud-coach') + keyTime
+        // const imgurl = getOssUploadUrl('cloud-coach') + keyTime
 
         await request.post(state.platformApi + '/open/music/sheet/img', {
           data: { musicSheetId: musicDetail.value.id, musicImg: imgurl }