4

Je crée automatiquement une extension chromatique pour afficher les messages de page spécifiques. Avec un simple contrôleur popup et un thread d'arrière-plan pour gérer fb api interactifAPI JavaScript Facebook pour l'extension google chrome

Je ne peux pas charger facebook js api dans la page d'extension avec la méthode des exemples officiels.

Le script jssdk a été chargé et exécuté vérifié par les outils de développement chrome.

Mais window.FB n'est pas défini par le script chargé !!! J'ai aussi ajouté une balise de script manuellement.

  • Il est apparu à la fois le fil de fond et la fenêtre contextuelle.
  • Si injecter avec iframe pour charger la page, il sera chargé avec succès window.FB et popup une fenêtre de connexion/authentification. Mais il y avait un problème de domaine croisé!
  • La div # fb-root existe.
  • menifest.json a content_security_policy

Répondre

0

objet src Je n'ai pas une solution, mais cela pourrait vous conduire dans la bonne direction.

Le problème peut provenir du document.location du document d'extension. Pour le javascript s'exécutant dans la portée de l'extension, le protocole est "chrome-extension: //", alors que de nombreuses bibliothèques JS attendent "http" ou "https".

De la recherche à la ligne suivante au fichier jssdk, il semble que FB faire cette hypothèse ainsi:

var k = typeof j == 'undefined' ? location.protocol.replace(':', '') : j ? 'https' : 'http';

Essayez le débogage ces cas, le remplacement de la ligne ci-dessus avec quelque chose comme:

var k = 'http';

Espérons que cela aide.