Jelajahi Sumber

add cdn host

guoziyun 1 tahun lalu
induk
melakukan
61dc7c319b
2 mengubah file dengan 15 tambahan dan 11 penghapusan
  1. 1 0
      config/app/production.js
  2. 14 11
      routes/index.js

+ 1 - 0
config/app/production.js

@@ -10,4 +10,5 @@ module.exports = {
   mongodbUrl: 'mongodb://localhost:27017/artsite',
   host: 'https://art.pcoloring.com',
   resHost: 'https://pcoloring.com',
+  cdnHost: 'https://d2mb6s2cy1zg97.cloudfront.net',
 }

+ 14 - 11
routes/index.js

@@ -99,9 +99,11 @@ router.get('/:lang/', function (req, res, next) {
       .exec();
 
 
+    let host = config.cdnHost ?? config.resHost;
+
     for (let doc of albums) {
-      doc.icon = `${config.resHost}/res/coloring/album_icon/320/${doc._id}.jpeg`;
-      doc.cover = `${config.resHost}/res/coloring/album_cover/320/${doc._id}.jpeg`;
+      doc.icon = `${host}/res/coloring/album_icon/320/${doc._id}.jpeg`;
+      doc.cover = `${host}/res/coloring/album_cover/320/${doc._id}.jpeg`;
       doc.title = doc.title ? doc.title[lang] : '';
       doc.slogon = doc.slogon ? doc.slogon[lang] : '';
       doc.size = doc.contents.length;
@@ -363,10 +365,10 @@ router.get('/:lang/albums', function (req, res, next) {
       .lean()
       .exec();
 
-
+    let host = config.cdnHost ?? config.resHost;
     for (let doc of albums) {
-      doc.icon = `${config.resHost}/res/coloring/album_icon/320/${doc._id}.jpeg`;
-      doc.cover = `${config.resHost}/res/coloring/album_cover/640/${doc._id}.jpeg`;
+      doc.icon = `${host}/res/coloring/album_icon/320/${doc._id}.jpeg`;
+      doc.cover = `${host}/res/coloring/album_cover/640/${doc._id}.jpeg`;
       doc.title = doc.title ? doc.title[lang] : '';
       doc.slogon = doc.slogon ? doc.slogon[lang] : '';
       doc.size = doc.contents.length;
@@ -412,8 +414,9 @@ router.get('/:lang/album/:id', function (req, res, next) {
 
     if (!doc) throw createError(404, 'Album Not Found!');
 
-    doc.icon = `${config.resHost}/res/coloring/album_icon/320/${doc._id}.jpeg`;
-    doc.cover = `${config.resHost}/res/coloring/album_cover/640/${doc._id}.jpeg`;
+    let host = config.cdnHost ?? config.resHost;
+    doc.icon = `${host}/res/coloring/album_icon/320/${doc._id}.jpeg`;
+    doc.cover = `${host}/res/coloring/album_cover/640/${doc._id}.jpeg`;
     doc.title = doc.title ? doc.title[lang] : '';
     doc.slogon = doc.slogon ? doc.slogon[lang] : '';
     doc.size = doc.contents.length;
@@ -726,11 +729,11 @@ router.get('/print/:id', function (req, res, next) {
     let doc = await models.Art.findById(id);
     if (!doc) throw createError(404, 'Art Not Found!');
 
-    let host = config.resHost;
+    let host = config.cdnHost ?? config.resHost;
     let size = Math.min(doc.width, 2000);
     let downlink = `${host}/thumbs/coloring-page/page/${size}/${doc._id}.jpeg`;
 
-    data.downlink = downlink;
+    data.downlink = doc;
 
     res.render('print', data);
 
@@ -760,7 +763,7 @@ router.get('/:lang/info', function (req, res, next) {
 
 const organizeData = (data, lang) => {
   data.forEach(doc => {
-    let host = config.resHost;
+    let host = config.cdnHost ?? config.resHost;
     let publishVersion = doc.publishVersion || 0;
     let version = publishVersion + 1500;
 
@@ -805,7 +808,7 @@ const organizeData = (data, lang) => {
 
 
 const organizeDetail = (doc, lang) => {
-  let host = config.resHost;
+  let host = config.cdnHost ?? config.resHost;
   let publishVersion = doc.publishVersion || 0;
   let version = publishVersion + 1500;