Facebook Connect 'sonraki' hatası

5 Cevap php

Ben yeni facebook kimlik doğrulama sistemi ile deney için çalışıyorum, ve ben işe giriş getthe olamaz.

Ben aşağıdaki hata iletisi alıyorum:


API Hata Kodu: 100

API hata Açıklama: Geçersiz parametre

Hata iletisi: Bir sonraki uygulama tarafından sahip olunan değil.


Facebook'a gönderilen ediliyor url:

http://www.facebook.com/connect/uiserver.php?app_id=444444444444444&next=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%23%3F%3D%26cb%3Df357eceb0361a8a%26origin%3Dhttp%253A%252F%252Fwww.mysite.com%252Ff38fea4f9ea573%26relation%3Dopener%26transport%3Dpostmessage%26frame%3Df23b800f8a78%26result%3DxxRESULTTOKENxx&display=popup&channel=http%3A%2F%2Fwww.mysite.com%2Ffbtester.php&cancel=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%23%3F%3D%26cb%3Df6095a98598be8%26origin%3Dhttp%253A%252F%252Fwww.mysite.com%252Ff38fea4f9ea573%26relation%3Dopener%26transport%3Dpostmessage%26frame%3Df23b800f8a78%26result%3DxxRESULTTOKENxx&locale=en_US&return_session=1&session_version=3&fbconnect=1&canvas=0&legacy_return=1&method=permissions.request

Url 'İleri' değişken olduğunu unutmayın:

next=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%23%3F%3D%26cb%3Df357eceb0361a8a%26origin%3Dhttp%253A%252F%252Fwww.mysite.com%252Ff38fea4f9ea573%26relation%3Dopener%26transport%3Dpostmessage%26frame%3Df23b800f8a78%26result%3DxxRESULTTOKENxx


Herhangi bir fikir ne yanlış gidiyor olabilir? Yaptığım bütün kopyalama ve facebook sitesinden facebook giriş demo kodunu yapıştırın:


 <?php
define('FACEBOOK_APP_ID', 'your application id');
define('FACEBOOK_SECRET', 'your application secret');

function get_facebook_cookie($app_id, $application_secret) {
  $args = array();
  parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args);
  ksort($args);
  $payload = '';
  foreach ($args as $key => $value) {
    if ($key != 'sig') {
      $payload .= $key . '=' . $value;
    }
  }
  if (md5($payload . $application_secret) != $args['sig']) {
    return null;
  }
  return $args;
}

$cookie = get_facebook_cookie(FACEBOOK_APP_ID, FACEBOOK_SECRET);

?>


<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:fb="http://www.facebook.com/2008/fbml">
  <body>
    <?php if ($cookie) { ?>
      Your user ID is <?= $cookie['uid'] ?>
    <?php } else { ?>
      <fb:login-button></fb:login-button>
    <?php } ?>

    <div id="fb-root"></div>
    <script src="http://connect.facebook.net/en_US/all.js"></script>
    <script>
      FB.init({appId: '<?= FACEBOOK_APP_ID ?>', status: true,
               cookie: true, xfbml: true});
      FB.Event.subscribe('auth.login', function(response) {
        window.location.reload();
      });
    </script>
  </body>
 </html>

Yardımın için teşekkürler!

5 Cevap

Ben aynı hatayı alıyorum, ama ben Rails kullanıyorum ve sorun Bağlan URL güncellenen değildi. Benim yerel uygulama port 3000 üzerinde çalışan, ve Bağlan URL port 80 de işaret edildi.

Yani değişen sizin için çalıştığını görmek.

  1. Goto http://www.facebook.com/developers
  2. Üzerinde çalıştığınız uygulamayı düzenle
  3. Soldaki Connect sekmesine tıklayın
  4. Connect URL kurulum doğru olup olmadığını kontrol edin

Ben Facebook API hakkında çok fazla bilmiyorum, ama ben aslında uygulama kimliği ve uygulama ile gizli your application id ve your application secret metni değiştirmek zorunda olduğunu biliyoruz. :)

Ben aynı sorunu vardı ve bunu çözemedim. Ji dediğim gibi taban alanı oldu. Ben oy istiyorum, ama sadece katıldı. FB ayar sayfalarında Koşullar çok kötü ... ben localhost kullanılır.

I also used a querystring of ?nothing=1 for testing b/c of the new requirement where it says: connect url must point to a directory (i.e., end with a "/") or a dynamic page (i.e., have a "?" somewhere.

Bu nedenle, sadece default.aspx koyamazsınız. Sen bir çizgiyle sona ya da bir olmak zorunda? hangi connect için garip bir gerekliliktir.

Teşekkürler Ji!

Ben bu ayarların ile çözülmesi mümkün:

Base Domain: domain.com (this should also solve adelein's issues with multiple subdomains)

URL bağlayın: bitirmek veya bir bölü çizgisi ile geçerli http:// veya https:// URL olması gerekiyor '?' URL bir yerde, bir sorgu dizesi anlamına. Temelde, facebook düzgün onlar kurmak talimatını işleme yok statik sayfalarla insanları gönderme istemiyor sanırım.

connect url doğru olduğunu ve hala işe yaramazsa, app ayara gitmek için doğru bir baz etki alanını belirtin. Test için, localhost kullanabilirsiniz. Hala hiçbir şans, göç ayara giderseniz, "yeni veriler izni" devre dışı