mirror of
https://github.com/IT4Change/Ocelot-Social.git
synced 2025-12-13 07:45:56 +00:00
fix youtube start parameter
This commit is contained in:
parent
f44121bcc1
commit
32fad6118c
@ -19,6 +19,7 @@ const metascraper = require('metascraper')([
|
||||
// require('./rules/metascraper-embed')()
|
||||
])
|
||||
const { ApolloError } = require('apollo-server')
|
||||
const parseUrl = require('url')
|
||||
|
||||
const got = require('got')
|
||||
const request = require('request-promise-native')
|
||||
@ -57,6 +58,8 @@ const scraper = {
|
||||
targetUrl = targetUrl.replace('//youtu.be/', '//youtube.com/')
|
||||
}
|
||||
|
||||
const url = parseUrl.parse(targetUrl, true)
|
||||
|
||||
let meta = {}
|
||||
let embed = {}
|
||||
|
||||
@ -95,6 +98,13 @@ const scraper = {
|
||||
throw new ApolloError('Not found', 404)
|
||||
}
|
||||
|
||||
// fix youtube start parameter
|
||||
const YouTubeStartParam = url.query.t || url.query.start
|
||||
if (output.publisher === 'YouTube' && YouTubeStartParam) {
|
||||
output.embed = output.embed.replace('?feature=oembed', `?feature=oembed&start=${YouTubeStartParam}`)
|
||||
output.url += `&start=${YouTubeStartParam}`
|
||||
}
|
||||
|
||||
return output
|
||||
},
|
||||
async fetchEmbed(targetUrl) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user