2012-11-15 6 views
3

내 필요는 사람들이 일부 PDF를 업로드 할 수있게 해주는 간단한 웹 양식을 갖추는 것입니다. 업로드 할 파일의 크기와 개수 때문에 내가 할 수있는 생각은이 앱의 백엔드를 내 보관 용 계정 또는 내 box.com 계정에 묶는 것입니다. 두 서비스 모두 앱을 빌드 할 때 비슷한 API를 제공합니다.보관 용 계정 하나만 사용하도록 설정된 보관 용 앱

하지만 둘 다 사람들의 보관 용 계정/박스 계정과 상호 작용한다고 가정합니다. 나는 그와 반대로하고 싶다고 생각한다. 사람들은 파일을 웹 서버에 업로드하지만이 두 서비스 중 하나에 프로그램 방식으로 업로드하려고하지만 내 계정에만 관련된 액세스 및 권한을 가진 내 계정으로 업로드하려고합니다.

사용자는 dropbox와 전혀 상호 작용할 필요가 없으며 아무 것도 승인 할 필요가 없습니다. 내가 소유하고있는 이전에 알려진 똑같은 보관 용 계정에 파일을 추가 할 수있는 방식으로 API를 사용할 수없는 이유는 무엇입니까?

+0

많은 파일에 저렴한 저장 용량을 원한다면 Amazon S3와 같은 것이 더 좋을 수도 있습니다. 그러나 Dropbox를 사용하면 API를 통해 계정에 액세스 할 수 있도록 사이트를 인증하면됩니다. 그런 다음 사용자가 업로드 한 파일을 보관 용 계정으로 전송합니다. – Jason

+0

@ Jason - 내 사이트가 API를 통해 내 계정에 액세스하도록 허용하는 것이 내가 혼란스러워하는 것입니다. 브라우저에서 웹 앱을 사용하여 사용자와 상호 작용하도록 내 앱을 승인하는 것만 가능합니다. – cbaltatescu

답변

4

이것은 의도 된 용도는 아니지만 기본 개념은 계정에 대한 인증 된 액세스 토큰을 수동으로 한 번만 저장하고 이후의 모든 호출에 대해 저장하고 다시 사용하는 것입니다.

이것은 기본적으로 여러 사용자를 관리하는 것과 같습니다. 단, 각 사용자가 자신의 토큰 대신에 동일한 액세스 토큰을 재사용한다는 점만 다릅니다. 계정을 동기화하기 위해 FB 내 서버 이야기를 가지고 내가 원하는 것은이었다 - -

2

나는 몇 가지 경우에 페이스 북 (FB) API를 사용하여 비슷한 문제가 있었다했지만 API는 일반적으로 사이트에 액세스하는 사람의 계정과 함께 사용하기위한 것입니다.

문제는 API가 일반적으로 의도 한대로 클라이언트 측 연결을 시도 할 때 클라이언트 측 스크립트를 통해 개인 로그인/자격 증명을 노출해야한다는 것입니다. 좋은.

내가 사용한 트릭은 필요한 특정 기능을 수행 할 수있는 일련의 메소드로 API 서버 측을 래핑 한 다음 JS 또는 서버 측 바인딩이 해당 메소드를 비동기로 호출 할 수 있도록 허용하는 것입니다. 봐라, 당신의 UI가 자격 증명이 없습니다 - -하지만 여전히 보관 용에 액세스 할 수있는 그런 다음 다시 Server 수준에서 데이터를 얻을 수 및 JSON과 UI에 반환

------   ----------        ------- 
| UI | -> AJAX -> | Server | -> Async GET w/Credentials -> | API | 
------   ----------        ------- 

: 결과 순서도 같이 보입니다.

예 - 파일 업로드 예 ... 사용자가 웹 서버에 파일을 게시하려고합니다. 메서드에 대한 서버 측 처리기에서 게시 된 이진 정보를 가져 와서 드롭 다운 상자에 대한 새로운 API 호출로 구성한 다음 (인증 된 세션이 아직없는 경우) 인증 한 다음 게시합니다. 그러면 해당 호출의 성공/실패를 기반으로 클라이언트 측에 정보를 반환 할 수 있습니다.

이 정보가 도움이되기를 바랍니다. :) 약간의 발판을 잡는다 - 그러나 그것은 가능하다! 믿음을 가지다!

관련 문제