3

私の必要性は、人々がいくつかのpdfをアップロードできるようにする簡単なWebフォームを用意することです。(アップロードされたファイルのサイズと数のために)私ができると思っていたのは、このアプリのバックエンドを私のdropboxアカウントまたは私のbox.comアカウントのいずれかに結び付けることです。どちらのサービスも、アプリを構築するための同様のAPIを提供します。

しかし、彼らは両方とも、私が人々のドロップボックス/ボックスアカウントと対話したいと思っていると想定しています。私はちょっとその逆が欲しいと思います。人々はファイルをWebサーバーにアップロードしますが、プログラムでこれら2つのサービスのいずれかにアップロードしたいのですが、MYアカウントの下で、MYアカウントにのみ関連するアクセスとアクセス許可があります。

ユーザーはドロップボックスを操作する必要はまったくなく、何も承認する必要はありません。私が所有している同じ、以前から知られているドロップボックスアカウントにファイルを追加できるように、APIを使用できないのはなぜですか?

4

2 に答える 2

5

これは使用目的ではありませんが、基本的な考え方は、アカウントの承認済みアクセストークンを一度手動で取得し、それを保存して、今後のすべての呼び出しで再利用することです。(取り消さないように注意してください。)

これは、各ユーザーが自分のアクセストークンではなく、同じアクセストークンを再利用することを除いて、基本的に複数のユーザーを管理する方法と同じです。

于 2012-11-16T19:25:28.647 に答える
3

Facebook(FB)APIを使用して同様の問題が発生した場合がありますが、アカウントと同期するためにサーバーがFBと通信することを望んでいましたが、APIは通常、アカウントのアカウントで使用することを目的としています。サイトにアクセスする人。

問題は、APIが一般的に意図されているように、クライアント側に接続しようとすると、クライアント側のスクリプトを介して独自のプライベートログイン/資格情報を公開する必要があることです...これは明らかに良くありません。

私が使用したトリックは、APIサーバー側を一連のメソッドでラップして、必要な特定の機能を実行できるようにし、JSまたはサーバー側のバインディングでそれらのメソッドを非同期に呼び出せるようにすることです。結果のフローチャートは次のようになります。

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

次に、データをServerレベルに戻し、JSONとしてUIに返します。UIには資格情報がありませんが、DropBoxにはアクセスできます。

つまり、ファイルをアップロードする例として...ユーザーがファイルをWebサーバーに投稿しようとしています。メソッドのサーバー側ハンドラーで-投稿されたバイナリ情報を取得し、それをドロップボックスへの新しいAPI呼び出しに形成します-認証します(アクティブな認証済みセッションがまだない場合)-そして投稿します。その後、その呼び出しの成功/失敗に基づいて、クライアント側に情報を返すことができます。

これがお役に立てば幸いです。:)少し足場が必要ですが、それは可能です!信仰を持っている!

于 2012-11-25T07:05:50.483 に答える