J'ai une page avec une balise d'image Open Graph:Comment coder correctement l'URL de l'image avec le signe égal pour la balise graphique ouvert Facebook
<meta property="og:image" content="http://childhumor2.homeip.net:9009/_ah/img/RYCF7Ty7wODp9R-N_QIWYA===s200"/>
L'image est un blob GAE et l'URL vient d'appeler get_serving_url
. L'URL fonctionne normalement.
Maintenant, si quelqu'un aime cette page, l'image miniature affichée dans le fil d'actualité est cassée. Seule une image 1x1 vierge est renvoyée au navigateur.
inspectant la page FB, le code HTML généré est:
<img src="http://external.ak.fbcdn.net/safe_image.php?d=6b635a7f80252e93c6b28e2dbe4ad440&w=90&h=90&url=http%3A%2F%2Fchildhumor2.homeip.net%3A9009%2F_ah%2Fimg%2FRYCF7Ty7wODp9R-N_QIWYA%3D%3D%3Ds200" class="img">
Lorsque vous affichez l'alimentation de l'utilisateur goût de nouvelles pour la première fois, je vois FB a frappé mon serveur pour l'image:
INFO 2010-11-14 21:33:17,701 dev_appserver.py:3283] "GET /_ah/img/RYCF7Ty7wODp9R-N_QIWYA%3D%3D%3Ds200 HTTP/1.1" 500 -
Il est évident qu'il y a un problème d'encodage d'URL avec les signes égaux dans l'URL mais je n'ai aucune idée de qui est en faute ici.
- Est-ce que FB doit déconnecter% 3D avant de rappeler l'image sur mon serveur?
- GAE ne gère pas correctement une URL codée?
- Devrais-je encoder l'URL dans la balise Open Graph d'une manière ou d'une autre? (J'ai essayé urllib.quote-ing avec les mêmes résultats.)
Pour rendre les choses plus confuses, le Facebook URL Linter récupère l'image correctement. En outre, si vous effectuez un partage FB sur la page, l'aperçu des vignettes s'affichera correctement. Cela m'amène à croire qu'il s'agit d'un bug avec le script safe_image.php FB est en train de primer/mettre en cache l'image.
Au 29.03.11 Facebook bug résolu ce. http://bugs.developers.facebook.net/show_bug.cgi?id=13632 – cope360