From: Chocobozzz Date: Mon, 11 Oct 2021 12:57:53 +0000 (+0200) Subject: Simpler ID match X-Git-Tag: v4.0.0-rc.1~292 X-Git-Url: https://git.immae.eu/?a=commitdiff_plain;h=e5d9877f0640e72653f6d88c743ee331dba6dc5b;p=github%2FChocobozzz%2FPeerTube.git Simpler ID match --- diff --git a/server/middlewares/validators/oembed.ts b/server/middlewares/validators/oembed.ts index cbd645a71..32dd05271 100644 --- a/server/middlewares/validators/oembed.ts +++ b/server/middlewares/validators/oembed.ts @@ -28,7 +28,6 @@ function buildUrls (paths: string[]) { const startPlaylistURLs = buildUrls(playlistPaths) const startVideoURLs = buildUrls(videoPaths) -const watchRegex = /\/([^/]+)$/ const isURLOptions = { require_host: true, require_tld: true @@ -81,9 +80,9 @@ const oembedValidator = [ const startIsOk = isVideo || isPlaylist - const matches = watchRegex.exec(urlPath) + const parts = urlPath.split('/') - if (startIsOk === false || matches === null) { + if (startIsOk === false || parts.length === 0) { return res.fail({ status: HttpStatusCode.BAD_REQUEST_400, message: 'Invalid url.', @@ -93,7 +92,7 @@ const oembedValidator = [ }) } - const elementId = toCompleteUUID(matches[1]) + const elementId = toCompleteUUID(parts.pop()) if (isIdOrUUIDValid(elementId) === false) { return res.fail({ message: 'Invalid video or playlist id.' }) }