X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmiddlewares%2Fvalidators%2Foembed.ts;h=32dd052712578ae7c847a08b9e5308308bcc03be;hb=743dab5517d4501f6b35cfc795de6c8b6f41ebb3;hp=cbd645a71939e8bafb4dfc4d1790bcac1e09dc36;hpb=5773128647398d8482a129da3f647c3f0795127d;p=github%2FChocobozzz%2FPeerTube.git 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.' }) }