2012-02-28 2 views
0

페이스 북의 php SDK 사용에 문제가 있습니다.페이스 북의 php SDK를 실행하기 위해 php.ini를 설정하십시오.

$ facebook-> getSignedRequest() 를 인쇄 할 때 인쇄는 '페이지'또는 '사용자'값을 표시하지 않습니다.

나는 또한 $ _REQUEST [ 'signed_request']를 인쇄 할 수 tryed 내가 얻을 모든

공지 사항입니다 : 정의되지 않은 인덱스 : signed_request

을이 수 내 php.ini 파일에 몇 가지 설정을 놓친 적이 있습니까?

도움 주셔서 감사합니다.

+0

이 문제를 해결할 수 있었습니까? 경우 예? 솔루션을 공유해주십시오. –

답변

0

이것은 문제의 절반 만 해결할 수 있지만 $ _REQUEST ('signed_request')가 $ _REQUEST ('signed_request')가 아닌 $ _REQUEST [ 'signed_request']를 기억하십시오.

편집 : 당신은 변수 당신이 원하는 그냥 사람을 받고

: 당신이 언급 한 바와 같이 마지막 부분을 무시, 여기 당신의 대답이다. 서명 된 요청을 반환하고 개인 키를 사용하여 요청의 암호를 해독해야합니다. 방법 : Heres :

function parse_signed_request($signed_request, $secret) { 
    list($encoded_sig, $payload) = explode('.', $signed_request, 2); 

    // decode the data 
    $sig = base64_url_decode($encoded_sig); 
    $data = json_decode(base64_url_decode($payload), true); 

    if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') { 
    error_log('Unknown algorithm. Expected HMAC-SHA256'); 
    return null; 
    } 

    // check sig 
    $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true); 
    if ($sig !== $expected_sig) { 
    error_log('Bad Signed JSON signature!'); 
    return null; 
    } 

    return $data; 
} 

function base64_url_decode($input) { 
    return base64_decode(strtr($input, '-_', '+/')); 
} 

서명 된 요청과 앱 비밀을 전달하면 배열이 반환됩니다. 나는 페이스 북 SDK로 그것을 할 수있는 방법이 있지만 확실하지는 않지만 사용하지는 않는다.

추가 정보 : https://developers.facebook.com/docs/authentication/signed_request/

goodluck는!

+0

물론, 여기에 글을 쓰는 것은 오타였습니다. $ _REQUEST [ 'signed_request']를 사용합니다. –

+0

더 많은 코드를 제공해 주시겠습니까? 그래서 문제를 확인할 수 있습니다. 나는 php.ini로이 문제를 일으킬 수있는 문제에 대해 생각할 수 없다. – MichaelH

+0

require ('php-sdk/facebook.php'); // 응용 프로그램 인스턴스를 만듭니다 (appId 및 secret로 바꿉니다). $ 페이스 북 = 새로운 페이스 북 (배열 ( 'APPID'=> 'myAppId', '비밀'=> 'mySecret', '쿠키'=> 사실, )); $ signed_request = $ facebook-> getSignedRequest(); $ 인쇄 내가 얻을 모두가 따르고 요청을 서명 : 배열 ([알고리즘] => HMAC-SHA256 [코드] => 2.AQBw-BIdk15ur3XD.3600.1330430400.5-634829875 | X8Oq1fMWhdW2hZunCRSIYIqf8Ms [issued_at] => 1330423787 [user_id] => myUserId) –

관련 문제