From abcf9325552110f4cdf385148bbcb9f93a988025 Mon Sep 17 00:00:00 2001 From: zphw <49032034+zphw@users.noreply.github.com> Date: Thu, 24 Dec 2020 01:53:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20added=20iDaily=20=E6=AF=8F=E6=97=A5?= =?UTF-8?q?=E7=8E=AF=E7=90=83=E8=A7=86=E9=87=8E=20(#6502)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/new-media.md | 6 ++++++ lib/router.js | 3 +++ lib/routes/idaily/index.js | 28 ++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 lib/routes/idaily/index.js diff --git a/docs/new-media.md b/docs/new-media.md index 9a6558b6a..cb81a7477 100644 --- a/docs/new-media.md +++ b/docs/new-media.md @@ -256,6 +256,12 @@ Tag +## iDaily 每日环球视野 + +### 今日 Timeline + + + ## iDownloadBlog ### blog diff --git a/lib/router.js b/lib/router.js index f4927d656..ae1c42581 100644 --- a/lib/router.js +++ b/lib/router.js @@ -3733,6 +3733,9 @@ router.get('/dayone/blog', require('./routes/dayone/blog')); // 滴答清单 router.get('/dida365/habit/checkins', require('./routes/dida365/habit-checkins')); +// iDaily 每日环球视野 +router.get('/idaily/today', require('./routes/idaily/index')); + // 北屋 router.get('/northhouse/:category?', require('./routes/northhouse/index')); diff --git a/lib/routes/idaily/index.js b/lib/routes/idaily/index.js new file mode 100644 index 000000000..3205f932a --- /dev/null +++ b/lib/routes/idaily/index.js @@ -0,0 +1,28 @@ +const got = require('@/utils/got'); + +module.exports = async (ctx) => { + const response = await got({ + method: 'get', + url: 'http://idaily-cdn.idailycdn.com/api/list/v3/iphone/zh-hans?page=1&ver=iphone', + }); + + const data = response.data; + + let dataToday = data.filter((item) => item.pubdate_timestamp * 1000 >= new Date().getTime() - 86400000); + + // leverage yesterday's items if today's not published yet + if (dataToday.length === 0) { + dataToday = data.filter((item) => item.pubdate_timestamp * 1000 >= new Date().getTime() - 86400000 * 2); + } + + ctx.state.data = { + title: `iDaily 每日环球视野`, + description: 'iDaily 每日环球视野', + item: dataToday.map((item) => ({ + title: item.ui_sets.caption_subtitle, + description: `
${item.content}`, + pubDate: new Date(item.pubdate_timestamp * 1000).toUTCString(), + link: item.link_share, + })), + }; +};