La boîte de dialogue d'envoi Facebook FB.ui renvoie par intermittence une erreur de liaison non valide
Cela a très bien marché pendant plus d'une semaine.
FB.ui({
method: 'send',
to: connectionid,
name: subject,
picture: staticurl + 'images/logoformysite.png',
link: homeurl + '/' + username + '/something=' + var1 +'&somethingelse=' + encodeURI(var2) + '&evenmore=' + encodeURI(var3),
description: invitemessage,
});
J'avais d'abord eu une erreur de la semaine dernière où, si l'URL est dans le Facebook de domaine, Facebook serait le bloquer. J'ai corrigé ça et maintenant, à la fois l'image et le lien n'appartiennent pas à la Facebook de domaine et viennent de mon site. Mais cela a commencé aujourd'hui avec rien n'a changé. Il est intermittent.
An error occurred. Please try again later.
API Error Code: 100 API Error Description: Invalid parameter Error Message: 'link' is invalid.
Il n'est pas clair pourquoi il fonctionne parfois et pas d'autres fois, même si je l'envoie à l'utilisateur même. Vous vous demandez si j'ai raté une annonce. Mais j'espère qu'il serait au moins échoue systématiquement, mais qui n'est pas le cas.
Mise à JOUR:
Je ne suis pas sûr de savoir comment le lien, je suis paramètre dans la boîte de dialogue peut être définie globalement sur la page. Il enverra les destinataires du message, le mauvais lien. Il serait très utile de voir un exemple de la façon la ci-dessus serait de travailler dans le nouvel open graph monde.
RÉPONSE LE 12 AOÛT 2013
Le problème tourne autour de notre url d'être dynamique et avoir besoin de forcer la mise en cache à chaque fois. Je vais maintenant faire un appel ajax pour "https://developers.facebook.com/tools/debug/og/object" pour les rafraîchir, puis de lancer la boite d'envoi.
source d'informationauteur k c
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème et qui a cessé de fonctionner depuis la semaine dernière.
Voici ma solution:
Aller à Facebook débogueur et ajouter votre URL.
Cliquez sur "Debug" et corriger tous les avertissements affichés par Facebook.
Pour réparer le mien j'ai dû ajouter de la
og.url
balise meta dans ma page. La valeur doit être exactement le même que celui que vous souhaitez partager (pas de redirection).Ensuite, Facebook m'a envoyé cette notification (alerte):
Essayez de partager votre lien avec
FB.ui
une fois de plus et maintenant votre post doit afficher automatiquement votreog
valeurs.Remarque:
Facebook octobre modification de rupture utilisera automatiquement ces
og
metas au lieu de la coutumeFB.ui
paramètres, par conséquent, vous pouvez maintenant activer la modification de rupture pour se préparer et retirer nom/image/description de votre code.Mise à JOUR:
Ce problème peut se produire à nouveau, même si ce que j'ai mentionné ci-dessus est mise en œuvre correctement.
Si c'est votre cas parce que vous avez à faire respecter Facebook à "gratter" de votre page. Ce processus se fait automatiquement par Facebook lorsque vous utilisez le Facebook de l'objet débogueur ou que vous copiez/collez votre lien sur votre timeline /messages privés. Si vous utilisez le SDK JavaScript vous devez demander à Facebook de l'index et du cache de votre page.
Vous ne trouvez pas cela dans le Facebook de la documentation relative à la SDK JavaScript (ou vous avez de la chance) donc, pour vous sauver de tous les jours, j'ai perdu à trouver cette incroyable émission (souvenez-vous de Facebook ne dit que votre lien n'est pas valide), vous pouvez trouver plus de détails sur cette page.
J'ai essayé d'utiliser l'API Graphique pour faire respecter mes page nouvellement créée pour être grattée par Facebook, si cela fonctionne pour vous, vous avez de la chance. La deuxième méthode, qui n'est pas mentionné, mais a produit le même résultat est d'envoyer une demande à Facebook de l'Objet Débogueur page et ajoutez votre lien de page dans l'URL (par exemple
https://developers.facebook.com/tools/debug/og/object?q=YourPageUrlHere
). En faisant cela, Facebook sera cette fois-ci gratter votre page et vous pouvez maintenant partager vos liens avec le Facebook API, tout fonctionne maintenant.Je peux confirmer que cela a été fixée pour moi quand j'ai forcé Facebook d'abord gratter l'URL avant d'essayer d'envoyer l'URL via le FB de Dialogue de l'INTERFACE utilisateur.
Exemple de code:
Assurez-vous que lorsque facebook demandes de votre url, il ne sera jamais transmise.
Une façon de le faire est de présenter facebook avec une page spéciale de son propre, contenant tous les ingrédients de la droite.
Voici un exemple (une sorte de base sur php + symfony 1.4):