2010-05-03 7 views
8

페이스 북을 마케팅 플랫폼으로 사용하는 코미디 그룹을위한 웹 사이트를 만들고 있습니다. 새 사이트의 요구 사항 중 하나는 모든 Facebook 이벤트를 캘린더에 표시하는 것입니다.FaceBook API를 통해 본인의 데이터 가져 오기

현재 저는 모든 내 친구들의 목록과 같이 내 자신의 Facebook 계정에서 일부 데이터를 가져올 수있는 Python 스크립트를 작성하려고합니다. 일단 고객 계정에서 더 복잡한 데이터를 가져 오면 (계정에 액세스 권한을 부여했기 때문에)이를 수행 할 수 있다고 가정합니다.

나는 많은 게시물을 보았으며 Facebook Connect를 포함한 Facebook API 문서를 살펴 봤지만 벽에 머리를 대고있었습니다. 내가 읽은 모든 것은 과도한 것처럼 보이는데, 이는 내 앱이 임의의 사용자 계정 (나를 인증 한 사용자)과의 연결을 설정하는 데 필요한 많은 인프라를 설정하는 것과 관련이 있습니다. 1 계정에 액세스해야하는 경우 훨씬 간단하지 않아야합니까?

Facebook 로그인 창을 표시하지 않고도 데이터를 검색 할 수있는 방법을 찾을 수 없습니다. 모든 친구들을 검색 할 스크립트가 있지만 페이스 북에 실제로 로그인해야하는 리디렉션이 포함되어 있습니다.

조언이나 링크를 부탁드립니다. 나는 단순한 뭔가를 놓치고있는 것처럼 느낍니다.

감사합니다.

답변

2

Facebook의 API는 많은 사용자가 사용할 앱을 만드는 개발자를 대상으로합니다.

고맙게도 새 Graph API는 이전 버전보다 훨씬 간단하게 사용할 수 있으며 많은 기본 인프라를 사용하거나 만들지 않고 작업하기가 어렵지 않습니다.

은 인증을 구현해야하지만 어렵지 않습니다. 사용자에게 offline_access 권한을 요청하는 한 한 번만 수행하면됩니다.

Desktop Authentication에 관한 문서는 현재 시점에서 가장 관련이 있습니다. 웹 앱을 설치하고 실행하면 자바 스크립트 기반 인증으로 이동할 수 있습니다.

일단 인증이 끝나면 다양한 URL에 GET 요청을하고 결과 JSON으로 작업하기 만하면됩니다.

여기 이벤트에 대한 설명서가 있으며 User의 친구 연결에서 친구 목록을 얻을 수 있습니다.

+0

감사합니다. Daniel 및 모든 사람, 오늘 밤에 당신이 게시 한 두 링크를보고 연결하고 offline_access 권한을 승인하는 시간을 보냅니다. 다른 사람이이 질문을 검색하는 경우에 대비하여 다시 찾겠습니다. 다시 한번 감사드립니다. – goggin13

0

나는 Facebook/Facebook Connect에 대한 전문가가 아니지만 사용/사용되는 응용 프로그램을 보았습니다. 실제로 그것을 수행하는 '공식적인'방법이있는 것 같습니다. 최선의 방법은 아마 이것의 라인을 따라 뭔가 될 것 같습니다.

http://wiki.developers.facebook.com/index.php/Connect/Authentication_and_Authorization

에 상관없이, 당신은 여전히 ​​계정에 연결하는 응용 프로그램에 권한을 부여해야합니다 방법을 실제로 '사용'의이뿐만 아니라 페이스 북 앱을 가지는 것을 의미한다.

0

Facebook 응용 프로그램 인증에 대한 대답은 찾기 어렵지만 실제로 Graph API의 "Analytics"페이지에서 찾을 수 있습니다. 다음을 지정하십시오 : https://graph.facebook.com/oauth/access_token?client_cred&client_id=yourappid&client_secret=yourappsecret, 그러면 다른 모든 호출에서 사용할 수있는 access_token이 주어집니다.

Facebook에서 제공하는 API는 현재이 수준의 기능을 제공하지 않습니다.

7

다른 사람들이이 게시물을 찾으면 성공한 조언에 내 노트를 게시하십시오.

Daniel과 William의 조언에 따라 적절한 연결 권한을 얻었습니다. 페이스 북 연결이 실제 인증이 나에게 가장 도움이되었다 설정에

https://developers.facebook.com/docs/authentication/

이 부분을 어떻게 작동하는지 윌리엄에서,이 링크는 설명한다. http://developers.facebook.com/docs/api

기본적으로 다음과 같이 표시됩니다. 다음 URL에 대한 링크를 게시하십시오. 사용자는 사이트 관리자 인 경우에도 물리적으로 클릭해야합니다.

사용자가 인증 한 후 http://www.example.com/HANDLER으로 돌아갈 Facebook 로그인으로 리디렉션됩니다. 기본 읽기 및 뉴스 피드 업데이트 이상을 수행하려면 위의 링크에이 변수를 포함해야합니다 (scope = offline_access, user_photos). 범위 변수는 쉼표로 구분 된 값 목록을 포함하며 Facebook은 로그인하는 동안 인증 사용자에게 명시 적으로 알릴 것이며 확인해야합니다. 나에게 가장 도움이되는 것은 offline_access 플래그 (user_photos는 자신의 사진도 볼 수있게 해줌) 였으므로, 정기적으로 로그인 한 사람이 없어도 콘텐츠를 가져올 수 있습니다. (나중에 얻은 액세스 토큰을 저장하는 한)

http://www.example.com/HANDLER은 요청에서 변수를 가져옵니다 (따라서 Facebook은 인증 후 http://www.example.com/HANDLER&code=YOUR_CODE으로 리디렉션됩니다). 처리기에서 코드 변수를 추출한 후 다음 요청을 보내야합니다. https://graph.facebook.com/oauth/access_token?
CLIENT_ID = YOUR_CLIENT_ID &
redirect_uri로 = http://www.example.com/oauth_redirect&
client_secret = YOUR_SECRET_KEY &
코드 =이 요청 양식 access_token은 = YOUR_ACCESS_TOKEN의 문자열을 반환합니다

YOUR_CODE.

그냥 'access_token은 ='오프 구문 분석, 당신은 당신이이 친구의 모든 포함 된 JSON 객체를 반환합니다 http://graph.facebook.com/me/friends?access_token=YOUR_ACCESS_TOKEN 같은 요청에, 페이스 북의 그래프 API에 액세스하는 데 사용할 수있는 토큰이있을 것이다

희망을 통해 누군가 다른 사람을 저장하지 않고 시간을 절약 할 수 있습니다. 도와 주셔서 감사합니다!

관련 문제