0

box.com アプリの Webhook をセットアップしようとしたときに、authorization_code を渡すオプションがないことに気付きました。これがないと、コードは box.com からファイルの更新されたコンテンツを取得できません。

簡略化されたワークフローは次のとおりです。

  • ユーザーは、box.com アカウントでファイルの [その他のアクション] を選択し、[XYZ に送信] をクリックします。
  • これにより、ユーザーを webapp に送信するポップアップ ウィンドウが表示され、ファイル ID と認証コードが渡されます。
  • 私たちの webapp は認証コードを使用してファイルをダウンロードし、後で参照できるようにリソースに box.com ファイル ID をタグ付けして保存します。
  • ユーザーは、box.com で「新しいバージョンのアップロード」を選択し、新しいファイルをアップロードします。
  • Webhook がトリガーされ、ファイル ID を渡す Web アプリケーションへの GET が発行されます。
  • Web アプリケーションは、ダウンロードしたファイルを ID で検索し、新しいバージョンのダウンロードを試みます。これを行うには認証コードが必要です。(元の認証コードの有効期限が切れて久しい。)
4

1 に答える 1

0

最終的に、私たちの解決策は、受信した auth_code の最初の使用中に取得された OAuth2 リフレッシュ トークンを使用することでした。この更新トークン (box.com のドキュメントによると) は、約 60 日間有効です。そのため、期限切れの更新トークンを探して更新するバックグラウンド ジョブを作成しました。まったく理想的な解決策ではありません (そしてコードが非常に厄介です) が、利用可能な最良の選択肢のようです。

于 2014-08-06T17:38:35.707 に答える