2012-09-24 3 views
0

https://developers.facebook.com/docs/payments/payer_promotion/#user_eligibility 에 Facebook 신규 광고주 프로모션 사양은 사용자가 자격이되면 1을, 그렇지 않은 경우는 1을 반환한다고 말합니다.Facebook 신규 광고주 프로모션이 작동하지 않음

하지만, PHP에서이 코드 :

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

반환 => is_eligible_promo '1';

하지만, 또는 자바 스크립트와 그래프 API 탐색기에서 해당 쿼리를 사용할 때 :

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() {}); 

, 그것은 ". 죄송합니다, 승진은 현재 사용할 수 없습니다"와 같은 뭔가를 반환합니다.

답변

0

사용자 요청의 IP 주소가 인 경우 user_is_eligible이 달라지는 것으로 확인되었습니다.

내 서버가 A 나라에 있기 때문에 해당 서버에서 페이스 북으로 PHP 요청을 보내면 해당 사용자가 자격이 있습니다. 하지만 내가 자바 스크립트 (나는 B 나라에있어)와 같은 매개 변수를 요청, 페이스 북은 사용자가 자격이 없다고 말한다.

사용자 위치에 따라 달라 지므로 모든 검사를 javascript로 이동하여이 문제를 해결했습니다.

0

하지만 그래프 API 탐색기에서 또는 JavaScript [...]를 사용하면 is_eligible_promo 필드가 반환되지 않습니다.

저는 이것이 액세스 문제 문제라고 생각합니다. 플레이어가 승격 대상인지 여부는 개별 앱에 달려 있다고 생각됩니다.

그래프 API 탐색기 (오른쪽 상단의 드롭 다운)에서 자신의 응용 프로그램을 선택하고 PHP 스크립트에서와 동일한 결과를 얻는 지보십시오.