webentwicklung-frage-antwort-db.com.de

Die angegebene URL ist in der Anwendungskonfiguration nicht zulässig

Ich habe dies in meiner HTML-Seite verwendet ...

<script>     
window.fbAsyncInit = function() {
    // init the FB JS SDK
    FB.init({
      appId      : 'xxxxxxxxxxxxxx', // App ID from the App Dashboard
      status     : true, // check the login status upon init?
      cookie     : true, // set sessions cookies to allow your server to access the session?
      xfbml      : true  // parse XFBML tags on this page?
    });

    // Additional initialization code such as adding Event Listeners goes here
};

// Load the SDK's source Asynchronously
// Note that the debug version is being actively developed and might 
// contain some type checks that are overly strict. 
// Please report such bugs using the bugs tool.
(function(d, debug){
     var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement('script'); js.id = id; js.async = true;
     js.src = "//connect.facebook.net/en_US/all" + (debug ? "/debug" : "") + ".js";
     ref.parentNode.insertBefore(js, ref);
}(document, /*debug*/ false));

 function shareOnFb(action, msg){
    FB.ui({ 
        method: action, 
        message: msg
    });
 }
</script>

wenn ich versuche, eine FB-Methode aufzurufen, wird dies in meiner Konsole angezeigt

Die angegebene URL ist in der Anwendungskonfiguration nicht zulässig .: Eine oder mehrere der angegebenen URLs sind in den App-Einstellungen nicht zulässig. Es muss mit der Website-URL oder der Canvas-URL übereinstimmen, oder die Domain muss eine Unterdomäne einer der Apps-Domains sein.

dies ist meine FB-App-Einstellung. Muss ich hier etwas ändern, um meine Website vorübergehend lokal zu betreiben? Deshalb habe ich versucht, sie hinzuzufügen

localhost/OfferDrive/zur App-Domain auf dieser Seite, aber es wird der Fehler angezeigt, dass es sich nicht um eine gültige Domain handelt

fb app settings

61
1Mayur

Sie müssen den Wert für Website mit Facebook-Login mit dem Wert http://localhost/OfferDrive/ füllen, damit sich Facebook authentifizieren kann dass die Anforderungen von JavaScript SDK von der richtigen Stelle kommen

60
Anvesh Saxena

Update auf Anvesh Saxenas Antwort (korrekt, aber veraltet, da sich die Oberfläche der FB-App geändert hat):

In Ihrer FB App-Konfiguration müssen Sie eine Website-Plattform mit der festgelegten URL Ihrer Website hinzufügen. Anschließend können Sie App-Domains hinzufügen, die ich der Basisdomain unserer Website zugewiesen habe (z. B. für eine URL wie http://www.mycoolwebsite.com, benutz einfach mycoolwebsite.com).

New FB Settings Screenshot

WICHTIG: Damit dies funktioniert, müssen Sie eine Unterdomäne der URL Ihrer App für Ihre lokale Entwicklung verwenden. Sie können dies auf einfache Weise tun, indem Sie Ihre Hosts-Datei auf Ihrem Entwicklungscomputer so ändern, dass eine nicht vorhandene Unterdomäne Ihrer Website verwendet wird, z. B. local.mycoolwebsite.com. Gehen Sie einfach auf Google 'Hosts-Datei bearbeiten' für Ihre Plattform (z. B. Mac/Windows), wenn Sie nicht mit der Vorgehensweise vertraut sind.

44
munsellj

Einstellungen -> Erweitert, URL zu "Valid OAuth Redirect URIs" hinzufügen. Dies funktioniert bei mir.

18
  • Gehe zu Facebook für Entwickler-Dashboard
  • Klicken Sie auf My Apps Und wählen Sie Ihre App aus der Dropdown-Liste aus.
    (Wenn Sie noch keine App erstellt haben, wählen Sie "Neue App hinzufügen", um eine neue App zu erstellen.).
  • Gehen Sie zu App Setting > Basic Tab Und klicken Sie dann im unteren Bereich auf "Add Platform".
  • Wählen Sie "Website" und fügen Sie die Website hinzu, um sich als Site URL Anzumelden (z. B. mywebsite.com).
  • Wenn Sie lokal testen, können Sie sogar einfach die localhost-URL Ihrer App angeben.
    z.B. http://localhost:8080/myfbsampleapp
  • Speichern Sie die Änderungen und Sie können jetzt über http://localhost:8080/myfbsampleapp Auf die Facebook-Informationen zugreifen.
9
Lucky
  1. Erstellen Sie über das Menüelement Ihres App-Namens in der oberen linken Ecke eine Test-App.
  2. Im Einstellungsbereich der neuen Test-App: Fügen Sie der Website-URL ' http: // localhost: 30 ' hinzu und fügen Sie den App-Domains 'localhost' hinzu.
  3. Aktualisieren Sie Ihre App mit der neuen Facebook-APP-ID
  4. Verwenden Sie Facebook SDK v2.2 oder eine der neuesten Versionen Ihrer App.
2
user215097

Ein Update zu munselljs Update ..

Ich habe dies in der Entwicklung zum Laufen gebracht, indem ich localhost: 3000 zur Option "Website-URL" hinzugefügt und das Feld "App-Domains" leer gelassen habe. Stellen Sie, wie bereits erwähnt, sicher, dass Sie eine Website-Plattform hinzugefügt haben.

2
MarcB

Ein weiterer Grund dafür kann sein, dass Sie die falsche AppId gesendet haben. Dies kann in der frühen Entwicklung vorkommen, wenn Sie eine Entwicklungs-App und eine Produktions-App haben. Wenn Sie die AppId für dev und Push to prod fest programmieren, wird dies angezeigt.

1
Craig

Beachten Sie, dass localhost eine spezielle Zeichenfolge ist, die der FB hier zulässt. Wenn Sie Ihre Debug-Umgebung nicht unter localhost konfiguriert haben, müssen Sie sie, soweit ich das beurteilen kann, unter diesen Namen schieben.

1
pfrank

In den anderen Antworten fehlt, wie localhost (oder 0.0.0.0 oder was auch immer) als oauth callback url. Hier ist die Erklärung. Wie kann ich localhost hinzufügen: 3000 to Facebook App für die Entwicklung

1
light24bulbs

Manchmal tritt dieser Fehler bei alten Javascript sdk auf. Wenn Sie lokal Javascript-Datei speichern. Aktualisiere es. Ich ziehe es vor, es die ganze Zeit vom Facebook-Server zu laden.

1
Md. Yusuf