データベースまたはサーバーから結果を返す関数があります。しかし、サーバーが失敗して何も返さない可能性があります。その場合、結果が返されるまでサーバー要求を繰り返す必要があります。
def getToken() =
getTokenFromDb orElse getTokenFromServer() map { t =>
saveTokenToDb(t)
t
}
ループgetTokenFromServer()
を使用する以外に、良い応答が得られるまで繰り返し要求するための賢明な解決策は何ですか? while
たぶん使用するwhile
のは良い解決策ですか?