URL不允许:Facebook PHP登录

Ant*_*ony 7 php url facebook facebook-graph-api openshift

我一直收到以下错误

应用程序配置不允许使用URL:应用程序的设置不允许使用一个或多个给定的URL.它必须与网站URL或Canvas URL匹配,或者域必须是App域之一的子域.

当我尝试使用我的PHP代码片段登录用户时(见下文).我的Facebook设置如下:

App Domains: myappname-mynamespace.rhcloud.com www.myappname-mynamespace.rhcloud.com

Site URL: http://myappname-mynamespace.rhcloud.com/

Canvas Page: http://apps.facebook.com/myappname

Canvas URL: http://myappname-mynamespace.rhcloud.com/

Secure Canvas URL: https://myappname-mynamespace.rhcloud.com/
Run Code Online (Sandbox Code Playgroud)

我在这里,这里,这里,这里这里都读过类似的问题,他们似乎都说了同样的话:我的网站URL(Facebook登录网站)不正确.

但我的Openshift URL就是这样的

http://myappname-mynamespace.rhcloud.com
Run Code Online (Sandbox Code Playgroud)

这就是我在Facebook Site URL字段中输入的内容.我index.phpOpenshift设备的根目录中有以下PHP代码():

<?php 
    require 'php-sdk/facebook.php';
    $facebook = new Facebook(array(
        'appId'  => 'xxxx',
        'secret' => 'xxxx'
    ));
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>Facebook PHP</title>
</head>
<body>
<h1>Hello World!</h1>
<?php
    // get user from facebook object
    $user = $facebook->getUser();

    if ($user): // check for existing user id
        echo '<p>User ID: ', $user, '</p>';
    else: // user doesn't exist
        $loginUrl = $facebook->getLoginUrl(array(
            'display' => 'popup',
            'redirect_uri' => 'http://apps.facebook.com/myappname'
        ));
        echo '<p><a href="', $loginUrl, '" target="_top">login</a></p>';
    endif; 
?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

当我输入我的Facebook应用程序的URL(http://apps.facebook.com/myappname),Hello World!我的登录链接显示在我的Facebook应用程序的iframe之上.但是当我点击登录链接时,我得到了上面提到的错误.任何帮助将不胜感激!

编辑

我在浏览器中输入了以下网址,并Hello World显示了登录链接.

http://myappname-mydomainname.rhcloud.com/
https://myappname-mydomainname.rhcloud.com/
Run Code Online (Sandbox Code Playgroud)

小智 2

不久前,我出于某种原因对 Facebook 的 API 进行了修改,但我不断收到同样的错误。事实证明,一些带有 http 的 url 应该是 https,而不是 Facebook 特意留下了正确的说明。我建议更改Site URL: http://myappname-mynamespace.rhcloud.comSite URL: https://myappname-mynamespace.rhcloud.com. 如果这没有帮助,我建议查看其他 URL 并更改它们。祝你好运


归档时间:

查看次数:

1825 次

最近记录:

12 年,2 月 前