2012-04-24 1 views
4

내 Dropbox에 액세스 할 수있는 권한을 내 앱에 부여해야하지만 사용자가 내 웹 사이트를 떠나 다시 방문하지 않아도되도록하고 싶습니다. 내가 아는 인증 API를 사용하려면 사용자가 보관 용 계정에 로그인해야하며 보관 용 웹 사이트에서 앱을 인증해야합니다.웹 페이지를 벗어나지 않고 Dropbox 앱을 인증하고 API를 사용하려면 어떻게해야합니까?

이 문제를 해결할 방법이 있습니까?

--Edit--

그래서 나는 우리가 사용자가 허용/같은 창 (SO이 작업을 수행) 내에서 응용 프로그램을 거부하라는 메시지가 표시되도록 구글/페이스 북의 인증 API를 사용할 수 있다는 것을 알고. Dropbox API로 이런 종류의 작업을 수행 할 수 있다면 정말 대단 할 것입니다.

감사합니다.

+0

정확히 같은 질문이 있습니다. 콜백 또는 iframe 솔루션으로 끝났습니까? 그리고 더 이상 인증 할 필요가 없도록 오랜 시간 동안 토큰을 저장할 수 있습니까? –

답변

3

현재 보관 용 계정 API는 보관 용 사이트를 통해 OAuth를 사용하여 승인을 처리해야합니다. 인증 후 'oauth_callback'매개 변수를 사용하여 사용자를 사이트로 리디렉션 할 수 있습니다. 여기 문서 (. StackOverflow의 구글의 로그인으로 할 것 같다 것입니다) https://www.dropbox.com/developers/reference/api#authorize

당신도, 즉 전체 프로세스에 대해 하나의 탭에서 이것을 사용 권한 부여 페이지로 사용자의 현재 페이지를 리디렉션 할 수 있습니다

및 사용 'oauth_callback'매개 변수로 필요한 조치/정보를 사용하여 사이트로 돌아가서 사용자가 승인에서 돌아오고 있음을 나타냅니다.

+0

Dropbox의 API를 구현하는 오픈 소스 프로젝트가 있습니까? OAuth를 사용하여 Dropbox로 인증하는 예제를보고 싶습니다. – efficiencyIsBliss

+1

Dropbox API를 사용하는 오픈 소스 프로젝트가있을 것이라고 확신합니다. 그러나 어떤 오프 핸드도 모르겠습니다. 각 공식 SDK에는 예가 있습니다. https://www.dropbox.com/developers/reference/sdk – Greg

+0

Android 인 Dropbox 앱이 어떻게 작동하는지 궁금합니다. 로그인하면 리디렉션이 없습니다. !? –

2

iframe을 사용하십시오.

iframe에서 Oauth를 엽니 다. 리디렉션을 iframe_done.html

로 설정하면 iframe_done.html이로드 될 때 기본 페이지와 동일한 도메인이되므로 iframe 외부에서 통신 할 수 있으므로 수신 한 키를 가져 와서 최대로 전달하십시오. 부모는 키를 사용하고 iframe을 닫고 모든 일이 일어난 것처럼 보입니다.