[Bug] [embed] Youtube url met 2e param

Pagina: 1
Acties:

  • 0stone0
  • Registratie: Maart 2015
  • Laatst online: 20-10 15:09

0stone0

01000010 01101111 01100101 !

Topicstarter
[video] en [embed] youtube url's lijken niet te werken als er een param voor het video id staat ?
Of zie ik hier over het hoofd?

Fout;
--> youtube.com/watch?time_continue=2&v=2drI_iT4NUg


Random 2e param als eerste;
--> youtube.com/watch?ditiseentest=1&v=2drI_iT4NUg





Random 2e param als laatste;
--> youtube.com/watch?v=2drI_iT4NUg&ditiseentest=1
--> youtube.com/watch?v=2drI_iT4NUg&time_continue=300


Aleen video id;
--> youtube.com/watch?v=2drI_iT4NUg


Raw post
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[b][video][/b] en [b][embed][/b] youtube url's lijken niet te werken als er een param voor het video id staat ?
[small]Of zie ik hier over het hoofd?[/small]

[red][b]Fout;[/b][/red]
[mono]--> youtube.com/watch?time_continue=2&[b]v=2drI_iT4NUg[/b][/mono]
[embed=10,10]https://www.youtube.com/watch?time_continue=2&v=2drI_iT4NUg[/embed]

[red][b]Random 2e param als eerste;[/b][/red]
[mono]--> youtube.com/watch?ditiseentest=1&[b]v=2drI_iT4NUg[/b][/mono]
[embed=10,10]https://www.youtube.com/watch?ditiseentest=1&v=2drI_iT4NUg[/embed]

[hr]

[green][b]Random 2e param als laatste;[/b][/green]
[mono]--> youtube.com/watch?[b]v=2drI_iT4NUg[/b]&ditiseentest=1[/mono]
[mono]--> youtube.com/watch?[b]v=2drI_iT4NUg[/b]&time_continue=300[/mono]
[table bordercolor=red]
    [tr bordercolor=red]
        [td][embed=10,10]https://www.youtube.com/watch?v=2drI_iT4NUg&ditiseentest=1[/embed][/td]
        [td][embed=10,10]https://www.youtube.com/watch?v=2drI_iT4NUg&time_continue=300[/embed][/td]
    [/tr]
[/table]

[green][b]Aleen video id;[/b][/green]
[mono]--> youtube.com/watch?v=2drI_iT4NUg[/mono]
[embed=10,10]https://www.youtube.com/watch?v=2drI_iT4NUg[/embed]

[ Voor 30% gewijzigd door 0stone0 op 23-01-2019 12:28 ]

"~~Linux is only free if your time has no value"


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 18:06

crisp

Devver

Pixelated

We gebruiken deze expressie om youtube urls te herkennen:
code:
1
~^https?://((www|m|[a-z]{2})\.)?youtube\.com/(watch\?v=|embed/|v/)([\w-]+)([&?]t=[0-9hms]+)?~

We verwachten dus inderdaad de v= parameter als eerste (en een eventuele t= parameter daar achter).

Het komt volgens niet heel vaak voor dat er nog een parameter voor de v= staat. Mag ik vragen hoe je tot die url's bent gekomen? Als we flexibelere ondersteuning willen hebben voor de GET-parameters zouden we die eigenlijk moeten parsen; dat zou een niet-triviale wijziging zijn tov de relatief simpele expressie die we nu gebruiken.

Intentionally left blank


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 16:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Hmm en deze dan?


.edit: ah youtu.be is ook ondersteund. Maar niet volgens die regex ;).

Goed, er zijn dus al meerdere regexen. Is het dan niet een relatief kleine moeite om een extra regex te maken die ondersteunt dat die v= parameter overal in de query string staat, ipv specifiek achter de ?. Of moet je de tijd ook weten voor de embed tag?

.edit2: zo te zien wel ja, gewoon t=<tijd> opgeven bij de embed url werkt blijkbaar niet :Z. Dan wordt het wel wat harig, ja.

[ Voor 110% gewijzigd door .oisyn op 25-01-2019 10:32 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • 0stone0
  • Registratie: Maart 2015
  • Laatst online: 20-10 15:09

0stone0

01000010 01101111 01100101 !

Topicstarter
crisp schreef op vrijdag 25 januari 2019 @ 09:47:
We gebruiken deze expressie om youtube urls te herkennen:
code:
1
~^https?://((www|m|[a-z]{2})\.)?youtube\.com/(watch\?v=|embed/|v/)([\w-]+)([&?]t=[0-9hms]+)?~

We verwachten dus inderdaad de v= parameter als eerste (en een eventuele t= parameter daar achter).

Het komt volgens niet heel vaak voor dat er nog een parameter voor de v= staat. Mag ik vragen hoe je tot die url's bent gekomen? Als we flexibelere ondersteuning willen hebben voor de GET-parameters zouden we die eigenlijk moeten parsen; dat zou een niet-triviale wijziging zijn tov de relatief simpele expressie die we nu gebruiken.
Video heb ik van; https://www.ea.com/en-gb/...progression-customization

Toen gwn op de banner gedrukt en uit address balk gekopieerd! Snap zelf ook niet helemaal waarom de v param als 2e komt...

Zou het niet mogelijk zijn om de Regex zo aan te passen dat er een not required capture group voor de v capture group komt? Neem aan dat jullie de time_continue param toch niet nodig hebben :)

"~~Linux is only free if your time has no value"


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 18:06

crisp

Devver

Pixelated

0stone0 schreef op vrijdag 25 januari 2019 @ 13:21:
[...]

Zou het niet mogelijk zijn om de Regex zo aan te passen dat er een not required capture group voor de v capture group komt? Neem aan dat jullie de time_continue param toch niet nodig hebben :)
Dat zou kunnen, maar dan is het waarschijnlijk handiger om de /watch?v= expressie los te trekken van de ook-bestaande /v/ variant, anders wordt het er niet leesbaarder (en dus onderhoudbaar) op :P

Wat @.oisyn klopt namelijk; we hebben meerder expressies voor youtube zodat we ook youtu.be herkennen (en die is vanwege leesbaarheid ook losgetrokken).

Intentionally left blank


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 18:06

crisp

Devver

Pixelated

En inmiddels gefixed :)

Intentionally left blank

Pagina: 1