2011-03-23 4 views
0

AMFPHP를 사용하여 Facebook APP를 개발 중입니다. AMFPHP가 작동하고 Facebook SDK가 있는데, 문제는 AMFPHP 게이트웨이를 통해 서비스를 호출하여 FB에 연결하고 UID를 반환하는 서비스에 액세스 할 때 null 값이 발생한다는 것입니다. 내 생각 엔 AMFPHP 서비스를 FB 플랫폼에 연결하는 데 뭔가 잘못하고 있다는 것입니다.AMFPHP + Facebook

이것은 gateway.php

<?php 

define("PRODUCTION_SERVER", false); 

include "libraries/amfphp/globals.php"; 
include "libraries/amfphp/core/amf/app/Gateway.php"; 

$gateway = new Gateway(); 

$gateway->setClassPath("./services"); 
$gateway->setClassMappingsPath("./services/vo"); 

$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1"); 
$gateway->setErrorHandling(E_ALL^E_NOTICE); 

if(PRODUCTION_SERVER) 
{ 
    $gateway->disableDebug(); 
    $gateway->disableStandalonePlayer(); 
} 

$gateway->enableGzipCompression(25*1024); 
$gateway->service(); 

?> 

이며,이 테스트 서비스 :

<?php 

require_once("../libraries/facebook.php"); 

class Test 
{ 
    public function uid() 
    { 
     $facebook = new Facebook(array(
      'appId' => 'XXXXXXXXXXXX', 
      'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXX', 
      'cookie' => false, 
     )); 

     $session = $facebook->getSession(); 
     return $facebook->getUser(); 
    } 
} 

누구든지 내가 잘못 일을 할 수있는 알고?

추신 : 사용자가 로그인하고 필요한 권한이 있다고 가정하고 서비스 클래스에서 로그인 및 권한 확인을 생략했습니다.

답변

0

AMF 서비스를 호출하는 사용자의 사용자 정보를 검색하고 싶지만 appId 및 appSecret을 사용하여 Facebook SDK 클래스를 인스턴스화 할 때 로그인 한 사용자가 없으면 응용 프로그램을 Facebook에 연결했을뿐입니다. 애플리케이션에서 Facebook 사용자 세션을 유지하려면 웹 애플리케이션에 Facebook 연결을 구현해야합니다.이 연결을 통해 Facebook 세션을 검색 할 수있게되고, 해당 세션을 사용하여 사용자를 대신하여 Facebook에 요청할 수 있습니다 . 자세한 내용은 here을 참조하십시오.

관련 문제