Facebook注册验证:拒绝访问属性'Arbiter'的权限

时间:2011-08-26 14:54:52

标签: facebook validation permissions registration denied

我有一个问题需要验证我的Facebook表单。在自定义输入模糊时,我有消息

  

访问属性的权限被拒绝

并且不会进行验证。

这是我的代码:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
    <title>Home</title>
</head>
<body>
    <div id="fb-root"></div>
    <script src="https://connect.facebook.net/en_US/all.js#appId=<?php echo FACEBOOK_APP_ID; ?>&xfbml=1"></script>

    <fb:registration
        fields='[
                {"name":"name"},
                {"name":"first_name"},
                      {"name":"last_name"},
                      {"name":"gender"},
                      {"name":"company", "description":"Company", "type":"text"},
                      {"name":"address", "description":"Address", "type":"text"},
                      {"name":"zip_code", "description":"Zip Code", "type":"text"},
                      {"name":"city", "description":"City", "type":"typeahead", "categories":["city"]},
                      {"name":"phone", "description":"Phone","type":"text"},
                      {"name":"mobile_phone", "description":"Mobile Phone","type":"text"},
                      {"name":"email"},
                      {"name":"optin", "description":"I may receive communications from Fanpage Booster", "type":"checkbox", "default":"unchecked"},
                      {"name":"captcha"}
                     ]'
        redirect-uri="recup.php" width="530" fb_only="true" onvalidate="validate" >
    </fb:registration>
    <script>
        function validate(form) {
            errors = {};
            if (form.company == '') {
                errors.company = "Company can't be empty !";
            }
            if (form.address == '') {
                errors.address = "Address can't be empty !";
            }
            if (form.zip_code == '') {
                errors.zip_code = "Zip Code can't be empty !";
            }
            return errors;
        }
    </script>
</body>

我看了一些有关Facebook注册,Facebook文档和本网站问题的教程,但我没有看到解决方案或类似的问题......

如何解决此问题?

2 个答案:

答案 0 :(得分:3)

我遇到了同样的情况,最后通过使用安全站点(HTTPS)来修复它。 即使我指定了无协议的脚本引用,它也无法在HTTP中工作。

答案 1 :(得分:1)

我无法重现该错误。我确实必须确保将redirect-uri设置为绝对URL,添加一个关闭的html标记,并将脚本引用更改为协议,如下所示:

<script src="//connect.facebook.net/en_US/all.js#appId=APPID&xfbml=1"></script>  

Facebook验证不适用于模糊,一旦表单提交,它就可以运行。你在哪里添加一个onblur事件?