tokenがログインのたびにかわる仕様について、batchでアクセス中にユーザーがアプリにログインしてしまい エラーになるケースが多々あります。こちらについて対策などなされる予定はありますでしょうか? #バッチ専用ユーザーを用意するというのはありますが、ユーザーに説明するのにしきい高いです。
アクセストークンですが、ログインの度に必ず更新されるのではなく、アクセストークンの有効期限が切れている場合にアプリの認証処理を走らせたタイミングで更新されます。
例えばアクセストークンの有効期限が10:00までだった場合
1. 09:00 [バッチ] APIリクエスト (アクセストークンA) 2. 09:30 [画面] アプリ認証 (アクセストークンA)←ここでは更新されない 3. 09:50 [バッチ] APIリクエスト (アクセストークンA) 4. 10:01 [画面] アプリ認証 (アクセストークンB)←ここで更新される 5. 10:02 [バッチ] APIリクエスト (アクセストークンB)
という状態になります。
現状の仕様では、リクエストの度にDBなどの永続化されたデータを毎回参照し、アプリの画面など別のプロセスでトークンの更新があっても問題ないように実装いただくのが回避策になるかと思います。
上記のため、対策の予定はございません。
ただ、開発者の皆様がご利用しやすいAPIにしていきたいと存じますので、ご意見などありましたら投稿いただけますと幸いです。
RE:tokenのexpireについて
アクセストークンですが、ログインの度に必ず更新されるのではなく、アクセストークンの有効期限が切れている場合にアプリの認証処理を走らせたタイミングで更新されます。
例えばアクセストークンの有効期限が10:00までだった場合
1. 09:00 [バッチ] APIリクエスト (アクセストークンA)
2. 09:30 [画面] アプリ認証 (アクセストークンA)←ここでは更新されない
3. 09:50 [バッチ] APIリクエスト (アクセストークンA)
4. 10:01 [画面] アプリ認証 (アクセストークンB)←ここで更新される
5. 10:02 [バッチ] APIリクエスト (アクセストークンB)
という状態になります。
現状の仕様では、リクエストの度にDBなどの永続化されたデータを毎回参照し、アプリの画面など別のプロセスでトークンの更新があっても問題ないように実装いただくのが回避策になるかと思います。
上記のため、対策の予定はございません。
ただ、開発者の皆様がご利用しやすいAPIにしていきたいと存じますので、ご意見などありましたら投稿いただけますと幸いです。