Re: Vimeo plante en tant que document distant
Cerdic <[email protected]>
| Newsgroups | gmane.comp.web.spip.devel |
|---|---|
| Message-ID | <a82e822a-b2c9-4a67-b001-197d00bb6dd5@Spark> |
J’ai l’impression qu’il y a plusieurs problèmes qui se superposent ici :p Je vais jeter un oeil... -- Cédric Le 22 déc. 2018 à 08:26 +0100, erational <[email protected]>, a écrit : > Bonjour > > J'ai eu exactement le même problème en début de semaine (voir mon > message du 17/12) > - en local aucun problème > - sur le web, impossible d'ajouter les vidéos de vimeo en document distant > > Le patch que tu proposes fonctionne bien. > Cela permet de rétablir la fonction et d'ajouter la vidéo en tant que > document distant (il manque juste encore la vignette de prévisualisation > de la video) > > merci ! > > doit-on commiter sur le core ? > > > Le 21/12/2018 à 20:42, ARNO* a écrit : > > Salut, > > > > J’ai l’habitude de référencer des pages Viméo comme documents joints. De manière très usuelle, dans un article, «Joindre document», onglet «Sur l’internet», je colle par exemple: > > https://vimeo.com/304775757 > > et hop, ça me met la page en tant que document distant joint à l’article, avec le titre récupéré. > > > > Sauf que depuis quelques jours, ça ne fonctionne plus. > > > > - En local sur ma bécane, ça fonctionne. > > > > - Sur un serveur Web en ligne, ça déconne, le document n’est «pas trouvé»: > > > > > > > > Je suis allé jouer avec inc/distant.php, mais je n’arrive pas à trouver où ça foire avec Viméo (avec Youtube, par exemple, pas de problème). > > > > Il me semble qu’on arrive à récupérer le contenu de la page, et on se retrouve à la ligne 447 avec: > > } elseif ($res) { > > $result['page'] = &$res; > > $result['length'] = strlen($result['page']); > > } > > > > Là j’ai quelque chose que je ne comprends pas: on renseigne le $result[‘page’], mais on laisse $result[‘status’] à 0. Du coup, dans recuperer_page, un résultat obtenu de cette façon là est jeté avec le test sur status!==200 de la ligne 625: > > if ($res['status'] !== 200) { > > return false; > > } > > > > > > > > ======= > > > > Pour faire fonctionner Vimeo, j’y parviens en faisant la modif suivante: > > inc/distant.php, ligne 440 et suivantes=-; > > > > // si on a pas deja recuperer le contenu par une methode detournee > > if (!$result['length']) { > > $res = recuperer_body($handle, $options['taille_max'], $gz ? $gz : $copy); > > fclose($handle); > > if ($copy) { > > $result['length'] = $res; > > $result['file'] = $copy; > > } elseif ($res) { > > $result['status'] = 200; > > if (!$result['headers']) $result['headers'] .= "Content-Type: text/html"; > > $result['page'] = &$res; > > $result['length'] = strlen($result['page']); > > } > > } > > > > C’est-à-dire forcer le statuts à 200 et forcer le content-type à text/html. > > > > Est-ce que quelqu’un peut valider ou invalider cette solution, et éventuellement comiter? > > > > ARNO* > > > > > > _______________________________________________ > > liste: https://listes.rezo.net/mailman/listinfo/spip-dev > > doc: http://www.spip.net/ > > dev: http://trac.rezo.net/trac/spip/ > > irc://irc.freenode.net/spip > > -- > _________________________________________ > https://www.erational.org > > _______________________________________________ > liste: https://listes.rezo.net/mailman/listinfo/spip-dev > doc: http://www.spip.net/ > dev: http://trac.rezo.net/trac/spip/ > irc://irc.freenode.net/spip