diff options
| author | Kagami Sascha Rosylight <saschanaz@outlook.com> | 2023-03-19 08:59:31 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-19 16:59:31 +0900 |
| commit | c091d9e6d558ceb743fb8b647b28dbce8f994d41 (patch) | |
| tree | 7b6eb79f10e0ffc9843d17e46aa556e3f0c0146a /packages/backend/src/server/web | |
| parent | perf(backend): improve performance of timeline apis (diff) | |
| download | misskey-c091d9e6d558ceb743fb8b647b28dbce8f994d41.tar.gz misskey-c091d9e6d558ceb743fb8b647b28dbce8f994d41.tar.bz2 misskey-c091d9e6d558ceb743fb8b647b28dbce8f994d41.zip | |
feat(frontend/MkUrlPreview): oEmbedのサポート (#10306)
* feat(frontend/MkUrlPreview): oEmbedのサポート
* Update CHANGELOG.md
* Update CHANGELOG.md
* Update CHANGELOG.md
* playerとoEmbedの統合
* Update CHANGELOG.md
* loading=lazyはここでは不要
* border: 0
* プレビュー直後にautoplayできる機能の復旧
* add test
* refactor test
* explain about cache
* expandPreviewはもう使わない
* summaly v4
* update summaly
* scrolling=no to fix pixiv
---------
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Diffstat (limited to 'packages/backend/src/server/web')
| -rw-r--r-- | packages/backend/src/server/web/UrlPreviewService.ts | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/packages/backend/src/server/web/UrlPreviewService.ts b/packages/backend/src/server/web/UrlPreviewService.ts index 2ce7293a52..21cf414087 100644 --- a/packages/backend/src/server/web/UrlPreviewService.ts +++ b/packages/backend/src/server/web/UrlPreviewService.ts @@ -19,9 +19,6 @@ export class UrlPreviewService { @Inject(DI.config) private config: Config, - @Inject(DI.usersRepository) - private usersRepository: UsersRepository, - private metaService: MetaService, private httpRequestService: HttpRequestService, private loggerService: LoggerService, @@ -51,15 +48,15 @@ export class UrlPreviewService { reply.code(400); return; } - + const lang = request.query.lang; if (Array.isArray(lang)) { reply.code(400); return; } - + const meta = await this.metaService.fetch(); - + this.logger.info(meta.summalyProxy ? `(Proxy) Getting preview of ${url}@${lang} ...` : `Getting preview of ${url}@${lang} ...`); @@ -85,16 +82,16 @@ export class UrlPreviewService { throw new Error('unsupported schema included'); } - if (summary.player?.url && !(summary.player.url.startsWith('http://') || summary.player.url.startsWith('https://'))) { + if (summary.player.url && !(summary.player.url.startsWith('http://') || summary.player.url.startsWith('https://'))) { throw new Error('unsupported schema included'); } - + summary.icon = this.wrap(summary.icon); summary.thumbnail = this.wrap(summary.thumbnail); - + // Cache 7days reply.header('Cache-Control', 'max-age=604800, immutable'); - + return summary; } catch (err) { this.logger.warn(`Failed to get preview of ${url}: ${err}`); |