From 0d272b1fb05c4098c31feb92ade9efa3bdfc9675 Mon Sep 17 00:00:00 2001 From: syuilo Date: Fri, 23 Nov 2018 08:13:17 +0900 Subject: Resolve #3376 --- src/server/api/endpoints/admin/update-meta.ts | 11 +++++++++++ src/server/api/endpoints/meta.ts | 1 + src/server/web/url-preview.ts | 7 +++++-- 3 files changed, 17 insertions(+), 2 deletions(-) (limited to 'src/server') diff --git a/src/server/api/endpoints/admin/update-meta.ts b/src/server/api/endpoints/admin/update-meta.ts index edbb51e3dc..cff9ff8e52 100644 --- a/src/server/api/endpoints/admin/update-meta.ts +++ b/src/server/api/endpoints/admin/update-meta.ts @@ -139,6 +139,13 @@ export const meta = { } }, + summalyProxy: { + validator: $.str.optional.nullable, + desc: { + 'ja-JP': 'summalyプロキシURL' + } + }, + enableTwitterIntegration: { validator: $.bool.optional, desc: { @@ -300,6 +307,10 @@ export default define(meta, (ps) => new Promise(async (res, rej) => { set.langs = ps.langs; } + if (ps.summalyProxy !== undefined) { + set.summalyProxy = ps.summalyProxy; + } + if (ps.enableTwitterIntegration !== undefined) { set.enableTwitterIntegration = ps.enableTwitterIntegration; } diff --git a/src/server/api/endpoints/meta.ts b/src/server/api/endpoints/meta.ts index faee9423d8..49ce41c7da 100644 --- a/src/server/api/endpoints/meta.ts +++ b/src/server/api/endpoints/meta.ts @@ -107,6 +107,7 @@ export default define(meta, (ps, me) => new Promise(async (res, rej) => { response.githubClientSecret = instance.githubClientSecret; response.discordClientId = instance.discordClientId; response.discordClientSecret = instance.discordClientSecret; + response.summalyProxy = instance.summalyProxy; } res(response); diff --git a/src/server/web/url-preview.ts b/src/server/web/url-preview.ts index eb835b05ac..7be9a75765 100644 --- a/src/server/web/url-preview.ts +++ b/src/server/web/url-preview.ts @@ -2,11 +2,14 @@ import * as Koa from 'koa'; import * as request from 'request-promise-native'; import summaly from 'summaly'; import config from '../../config'; +import fetchMeta from '../../misc/fetch-meta'; module.exports = async (ctx: Koa.Context) => { + const meta = await fetchMeta(); + try { - const summary = config.summalyProxy ? await request.get({ - url: config.summalyProxy, + const summary = meta.summalyProxy ? await request.get({ + url: meta.summalyProxy, proxy: config.proxy, qs: { url: ctx.query.url -- cgit v1.2.3-freya