Skip to content

Instantly share code, notes, and snippets.

@mitchbudreski
Created September 21, 2021 20:36
Show Gist options
  • Save mitchbudreski/6444d0f6e5b5187ba4fb7a905b69ffa8 to your computer and use it in GitHub Desktop.
Save mitchbudreski/6444d0f6e5b5187ba4fb7a905b69ffa8 to your computer and use it in GitHub Desktop.
In progress | domain specific authentication for video embedding sites
export function parseYoutubeUrl(url) {
// - Supported YouTube URL formats:
// - http://www.youtube.com/watch?v=My2FRPA3Gf8
// - http://youtu.be/My2FRPA3Gf8
// - https://youtube.googleapis.com/v/My2FRPA3Gf8
// - Supported Vimeo URL formats:
// - http://vimeo.com/25451551
// - http://player.vimeo.com/video/25451551
// - Also supports relative URLs:
// - //player.vimeo.com/video/25451551
url.match(
/(http:|https:|)\/\/(player.|www.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com))\/(video\/|embed\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/,
);
if (RegExp.$3.indexOf('youtu') > -1) {
var type = 'youtube';
} else if (RegExp.$3.indexOf('vimeo') > -1) {
var type = 'vimeo';
}
return {
type: type,
id: RegExp.$6,
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment