Facebook新的付款人促销不起作用

时间:2012-09-24 10:48:55

标签: facebook payment promotions

Facebook新的付款人促销规范https://developers.facebook.com/docs/payments/payer_promotion/#user_eligibility 如果用户符合条件,它将返回1,如果没有,则返回。

但是,这段代码用PHP:

$fbdata = $facebook->api('/me?fields=id,locale,third_party_id,is_eligible_promo');

返回is_eligible_promo => '1';

但是当我在Graph API资源管理器或JavaScript上使用该查询时:

FB.api('/me?fields=id,locale,third_party_id,is_eligible_promo', function(response) {});

它不会返回is_eligible_promo字段。

另外,调用此payement弹出窗口:

var obj = {
    method: 'fbpromotion',
    display: 'popup',
    package_name: 'zero_promo',
    product: '---my-open-graph-currency---'
};
FB.ui(obj, function() {});

,它会返回类似“抱歉,促销目前无法使用”的内容。

2 个答案:

答案 0 :(得分:0)

  

但是当我在Graph API资源管理器或JavaScript [...]上使用该查询时,它不会返回is_eligible_promo字段。

我认为这是一个access_token问题 - 我认为玩家是否有资格参加促销活动取决于个人应用。

尝试在Graph API资源管理器中选择您自己的应用程序(右上角的下拉菜单),然后查看您是否获得与PHP脚本中相同的结果。

答案 1 :(得分:0)

它解决了 user_is_eligible取决于用户请求的IP

由于我的服务器位于国家/地区,因此从该服务器到facebook的php请求返回该用户符合条件。但是当我用javascript请求相同的params时(我在国家B),facebook说用户没有资格。

通过将所有检查移至javascript来解决此问题,因为它取决于用户位置。