2011-10-13 4 views
0

채팅 문서에 따르면새로운 accesstoken. 항상 session_key 및 sig를 복제 했어도 인증을 취소하십시오.

 // creates the response array 

    $resp_array = array(

    'method' => $challenge_array['method'], 

    'nonce' => $challenge_array['nonce'], 

    'access_token' => $access_token, 

    'api_key' => $options['app_id'], 

    'call_id' => 0, 

    'v' => '1.0', 
); 
    // creates signature 

    $response = http_build_query($resp_array); 

그래서 아래 코드를 변경합니다.

[buffer appendFormat:@"api_key=%@&", self.app_key]; 
[buffer appendFormat:@"call_id=%d&", rand()]; 
[buffer appendFormat:@"method=%@&", self.method]; 
[buffer appendFormat:@"nonce=%@&", self.nonce]; 
[buffer appendFormat:@"access_token=%@&",self.accessToken]; 
[buffer appendFormat:@"v=%@&",@"1.0"]; 
NSData *utf8data = [buffer dataUsingEncoding:NSUTF8StringEncoding]; 

그런 다음 [utf8data base64Encoded]을 fb 서버로 보냅니다.

그래도 인증 오류가 발생합니다.

RECV: <failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure> 

물론 session_key & sig를 accesstoken으로 바꿨습니다.

내가 누락 되었습니까?

나는이 문제를 어떻게 죽일지 모른다.

답변