2010-08-21 3 views
1

나는 캔버스 응용 프로그램의 범위를 벗어나 사용자 대신 친구의 벽에 게시해야하는 Facebook 응용 프로그램을 작성 중입니다. 포스터 사용자를 대신하여 친구의 벽에 게시하기

이에 대한 비밀

  • publish_stream 권한을 이론적으로 내가 원하는 일을하기에 충분합니다

    • 앱의 ID
    • 앱 : 나는 다음 있습니다. 현재 수행중인 작업 :

      1. 애플리케이션 ID 및 앱 비밀번호를 사용하여 내 애플리케이션을 나타내는 OAuth 토큰을 가져옵니다 ('애플리케이션으로 인증'here 참조)./friends_wall/피드에 POST를 사용하여 내 친구의 벽에 게시하려고
      2. (here를 참조)의 OAuth 토큰 그러나 1

      단계에서 검색된,이 친구로 친구의 벽에 게시 끝 (친구에게도 publish_stream 권한이 있습니다). 이 과정에서 아무도 포스터가 누구인지 지정하지 않았으므로 이는 예상치 못한 일은 아닙니다.

      내 질문 : 사용자를 나타내는 응용 프로그램에 대해 OAuth 토큰을 얻을 수 있습니까? 그렇지 않은 경우 캔버스 응용 프로그램의 범위를 벗어난 사용자의 친구의 벽에 게시 할 수있는 방법이 있습니까?

      감사합니다,
      Ashoat 사실

  • +0

    는 2 월 (6) 2013 년 API를 통해 더 이상 다른 사용자의 벽에 게시 할 더 이상 할 수 없게됩니다 페이스 북에 용자 ID해야한다 참조 https://developers.facebook.com/roadmap/그 후에 가능할 수있는 유일한 방법 포인트는 피드 대화 상자를 사용하여 사용자가 적극적으로 트리거하도록합니다. – CBroe

    답변

    2

    , 나는 내가 여기에 대한 답을 알아 낸 것 같아요. 새로운 OAuth API에서이를 수행 할 방법이 없다고 생각하지만 오래된 REST API를 사용하는 방법이있는 것으로 보입니다. 설명서 here을 참조하십시오.

    단순히 여전히 1 단계에서의 OAuth 토큰을 사용하여, 위의 문서와 함께 내 질문에 2 단계를 교체, 당신은 친구의 벽에 게시 코드 아래에 좋은 :)

    +0

    사실 나는 페이스 북의 채팅에서 답변을 찾은 것 같아요.) –

    +0

    그래, 실제로 타일러 였어. – Ashoat

    +0

    페이스 북은이 기능을 없애고 싶다고 생각합니다. 아마도 너무 많이 남용 당했을 것입니다. –

    3

    사용되어야한다 :

    NSMutableDictionary *paramspost = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
                @"My test app", @"name", 
                @"http://www.google.com", @"link", 
                @"FBTestApp app for iPhone!", @"caption", 
                @"This is a description of my app", @"description", 
                @"Hello!\n\nThis is a test message\nfrom my test iPhone app!", @"message", 
                nil]; 
    
    // Publish. 
    // This is the most important method that you call. It does the actual job, the message posting. 
    [ facebook requestWithGraphPath:@"100001433267690/feed" andParams:paramspost andHttpMethod:@"POST" andDelegate:self]; 
    

    "100001433267690"친구가

    관련 문제