42 lines
1.6 KiB
Plaintext
42 lines
1.6 KiB
Plaintext
# API pour récupérer le contenu Open Graph d'une page web
|
|
|
|
* 2019-06-26 17:01:25
|
|
* Développement
|
|
|
|
```html
|
|
<p>Pour la fonctionnalité de partage de liens sur ce blog, j'ai développé
|
|
un script qui récupére le contenu d'une page et analyse ses balises <code><meta></code>
|
|
pour identifier ses données <a href="http://ogp.me/">Open Graph</a>.</p>
|
|
```
|
|
|
|
```html
|
|
<p>Dans un autre contexte, j'ai rencontré un bug dans <a href="https://wallabag.org/">Wallabag</a>
|
|
qui l'empêche de récupérer le contenu de plusieurs pages web que je désirait lire plus tard.
|
|
Avec la volonté de créer un rapport de bug, la documentation m'a amené sur la piste du projet <a href="https://github.com/j0k3r/graby">Graby</a>
|
|
utilisé par Wallabag.</p>
|
|
```
|
|
|
|
```html
|
|
<p>Pour comprendre et peut-être proposer un correctif, j'ai joué avec Graby et
|
|
ça m'a amené à réaliser une API pour remplacer le script utilisé par le blog,
|
|
en combinent Graby et <a href="https://github.com/fusonic/opengraph"><code>fusonic/opengraph</code></a>.
|
|
L'objectif de l'API est donc de retourner des données générées par Graby et OpenGraph au format JSON.</p>
|
|
```
|
|
|
|
```html
|
|
<p>Voici à quoi ressemble un retour d'appel à l'API avec les données Open Graph :</p>
|
|
```
|
|
|
|
```html
|
|
<div id="gist-5d1387f5390e4-e9073e91ca04c978a50b558c0beaad54e40ec581" class="gist-container"></div>
|
|
```
|
|
|
|
```html
|
|
<script src="https://gist.deblan.org/fr/embedjs/5d1387f5390e4" async></script>
|
|
```
|
|
|
|
```html
|
|
<p><a href="https://gitnet.fr/deblan/apipage">Le projet</a> est dépendant de PHP 7.3 et c'est libre.
|
|
Le <a href="https://gitnet.fr/deblan/apipage">code source est dispo ici</a>.</p>
|
|
```
|