소스 검색

redirect cash url

itizawa 5 년 전
부모
커밋
6e155509f6
2개의 변경된 파일18개의 추가작업 그리고 2개의 파일을 삭제
  1. 9 1
      src/server/service/file-uploader/aws.js
  2. 9 1
      src/server/service/file-uploader/gcs.js

+ 9 - 1
src/server/service/file-uploader/aws.js

@@ -97,7 +97,15 @@ module.exports = function(crowi) {
     };
     const signedUrl = s3.getSignedUrl('getObject', params);
 
-    return res.redirect(signedUrl);
+    try {
+      const { externalUrlCached } = await attachment.cashExternalUrl(signedUrl);
+      return res.redirect(externalUrlCached);
+    }
+    catch (err) {
+      logger.error(err);
+      throw new Error('Fail to cash external url');
+    }
+
   };
 
   lib.deleteFile = async function(attachment) {

+ 9 - 1
src/server/service/file-uploader/gcs.js

@@ -74,7 +74,15 @@ module.exports = function(crowi) {
       expires: Date.now() + 30 * 1000,
     });
 
-    return res.redirect(signedUrl);
+    try {
+      const { externalUrlCached } = await attachment.cashExternalUrl(signedUrl);
+      return res.redirect(externalUrlCached);
+    }
+    catch (err) {
+      logger.error(err);
+      throw new Error('Fail to cash external url');
+    }
+
   };
 
   lib.deleteFile = async function(attachment) {