it-swarm.com.de

Ungültige Version angegeben, Facebook-Share-Plugin-Fehler

Ich möchte das Facebook Share-Plugin für die Web-App verwenden, an der ich gerade arbeite. Ich brauche nur den einfachen Share-Button. Die App verwendet requirjs zum Laden von Javascript. Daher folgte ich dem how-to und änderte die Facebook-API-URL in eine in Code-Snippets auf Facebook docs gefundene URL. Dies funktioniert nicht und die Sdk wirft Fehler invalid version specified. So sehen meine Dateien aus.

main.js

require.config({
  shim: {
    'facebookshare' : {
      exports: 'FB'
    }
  },
  paths: {
    'facebookshare':  "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0"
 }
});
require(['fb']);

fb.js

define(['facebookshare'], function(facebook) {
   document.body.innerHTML += '<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-layout="button"></div>';
});

Was ist der beste Weg, um nur das facebook share plugin mit requirjs aufzunehmen?

Ich habe folgende Fragen verwiesen, aber keine davon bietet eine konkrete Lösung. Nicht erfasster Fehler: Keine Version angegeben und Falscher Versionsfehler .

43
Ajinkya

Ich habe auch den folgenden Fehler erhalten, selbst wenn Sie den von Facebook bereitgestellten Standard-Einbettungscode verwenden.

Fehler nicht erfasst: ungültige Version angegeben in sdk.js

Das erste, was Sie überprüfen müssen, ist, dass Sie die Versionsnummer in Ihren FB.init-Aufruf aufnehmen:

FB.init({
  appId: 'your-app-id',
  xfbml: true,
  version: 'v2.8'
});

Der jetzt veraltete Fix ...

... war ein einfacher Tweak und änderte den Pfad:

From:   //connect.facebook.net/en_GB/sdk.js  
To:     //connect.facebook.net/en_GB/all.js

Und das hat den Fehler behoben. Ich habe leider keine Ahnung warum. :-(

93
Simon East

Erwägen Sie, der version-Eigenschaft einen src-Parameter hinzuzufügen (siehe unten):

js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8"

Die Standardvorlage unter Like-Button für Web ist unvollständig. Wenn Sie auf die Schaltfläche "Code abrufen" klicken, generiert Facebook eine vollständige Vorlage mit dem Parameter version.

55
Bright

Minor Heads, ich musste mich ändern

js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&amp;version=v2.8"; 

zu

js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8";

6
David Fregoli

Dieses Problem trat auf, als ich meine Datei von HTTP in HTTPS änderte. Der Grund war das Fehlen eines bestimmten "HTTP:" oder "HTTPS:" im folgenden Code:

<div class="fb-comments" data-width="100%" data-href="//amazingjokes.com/image/2017-03-17/A_good_sign_for_St__Patricks_day" data-num-posts="5"
     data-colorscheme="light">
</div>

normalerweise kopiert "//domain.com" das Schema, in dem wir uns befinden. Wenn Sie sich also auf htts: //example.com befinden, wird ein Link zu "//example2.com" als " https: //" angezeigt. beispiel2.com '. Für die 'fb-comments' müssen Sie HTTP oder HTTPS für data-href angeben.

Beachten Sie auch, dass " https://example.com " laut Facebook eine andere Seite als " http://example.com " ist. Wenn Sie also Ihre Site für SSL aktualisieren, verlieren Sie alle früheren Kommentare, wenn Sie die URL in den Social Plugins von HTTP in HTTPS ändern. Die von mir gewählte Lösung bestand darin, HTTP für alle älteren Beiträge und HTTPS für alles, was aktuell ist, zu verwenden

1
patrick

Im Facebook Share Button Configurator gibt es einen Fehler im Quellcode. Seite. Wenn Sie den Share Configurator auf der Seite verwenden, sollte dies problemlos funktionieren. Auf der Seite befindet sich jedoch ein Codebeispiel mit der Aufschrift "Kopieren und Einfügen des Codebeispiels in Ihre Website ...". Dies ist ein fehlerhafter Code, der dazu führt, dass die Schaltfläche auf Ihrer Seite nicht angezeigt wird. Die Javascript-Konsole zeigt 'Fehler: ungültige Version angegeben' an.

Ich habe mit Facebook im Juni 2018 ein Ticket zu dieser Ausgabe geöffnet. Sie haben bestätigt, dass es sich um ein Problem mit dem Code handelt, und haben versprochen, das Codebeispiel zu korrigieren, aber seit dem 17. Juni 2018 ist der fehlerhafte Code immer noch auf der Website vorhanden.

Hoffe das hilft. 

0
Philosoraptor