summaryrefslogtreecommitdiff
path: root/src/server/web
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/web')
-rw-r--r--src/server/web/url-preview.ts18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/server/web/url-preview.ts b/src/server/web/url-preview.ts
index cd53837a25..99ee2eaebd 100644
--- a/src/server/web/url-preview.ts
+++ b/src/server/web/url-preview.ts
@@ -2,14 +2,20 @@ import * as Koa from 'koa';
import summaly from 'summaly';
module.exports = async (ctx: Koa.Context) => {
- const summary = await summaly(ctx.query.url);
- summary.icon = wrap(summary.icon);
- summary.thumbnail = wrap(summary.thumbnail);
+ try {
+ const summary = await summaly(ctx.query.url, {
+ followRedirects: false
+ });
+ summary.icon = wrap(summary.icon);
+ summary.thumbnail = wrap(summary.thumbnail);
- // Cache 7days
- ctx.set('Cache-Control', 'max-age=604800, immutable');
+ // Cache 7days
+ ctx.set('Cache-Control', 'max-age=604800, immutable');
- ctx.body = summary;
+ ctx.body = summary;
+ } catch (e) {
+ ctx.status = 500;
+ }
};
function wrap(url: string): string {