Java box sdk を使用して自分の box アカウントにアクセスし、そこに保存されているファイルにアクセスする Java スタンドアロン アプリケーションを開発しています。
OAuth2
ボックスアカウントへの認証に使用しています。現在の手順は次のとおりです。
を使用してリダイレクト URI を構成します
developers/services
。ブラウザでhttps://api.box.com/oauth2/authorize?response_type=code&client_id=[client id]&state=authenticatedを使用 して、ボックス アカウントへのアクセスを承認します。これは、自分のアカウントに承認を与えるために介入した手動の手順です。
承認すると、URL に auth_code が埋め込まれた次のページにリダイレクトされます
URL から auth_code(boxAuthCode) を取得し、次のようにアプリケーションに貼り付けます。
BoxAPIConnection box_connection = new BoxAPIConnection(boxId, boxSecret, *boxAuthCode*);
アプリケーションは 30 秒以内に実行され (AuthCode は 30 秒以内に期限切れになります)、refresh_token が生成されます。更新トークンは永続化され、ボックス アカウントとの接続を設定するための後続のリクエストで使用されます。
box_connection = new BoxAPIConnection(boxId, boxSecret, tokens.get("Auth_Token"), tokens.get("Refresh_Token"));
ステップ 2、3、4 はボックス アカウントの 1 回限りのアクティビティですが、手動で介入して auth_code を生成し、30 秒以内にアプリケーションを実行してリフレッシュ トークンを取得する必要があります。ボックスアカウントを頻繁に変更したい場合、非常に面倒です。
これを処理するための柔軟でプログラム的な方法はありますか?手動で介入したくないので、別のボックス アカウントにアクセスしたい場合は、アプリケーションで変更boxId
しboxSecret
、ボックス アカウントとアプリケーションのリダイレクト URI を構成するだけで十分です。手順 2、3、および 4 を処理することができます。任意のヘルプまたは提案をいただければ幸いです。