fix: add OAuth server default timeout W-19549750 #1245
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Adds a (non-configurable) 2 minutes timeout to the OAuth server.
WebServerstarts the timer when starting the server viaawait WebServer.start(), also exposes asetTimeoutCallbackmethod forWebOAuthServerto set a callback to clean up server-dependent code likeWebOAuthServer.authorizeAndSave.There's a native
setTimeoutmethod for when the socket is active:https://nodejs.org/api/http.html#serversettimeoutmsecs-callback
It doesn't work for us because that requires a request to hit the server (and fail), so instead we use
setTimeoutwhile starting the server.Before
OAuth server hangs indefinitely until a successful auth happens (or other req fails)
After
Server times out after 2 minutes.
Testing instructions:
yarn compileyarn linkit intoplugin-authtime sf org login web, see it time out:NOTE: in this screenshot I modified the timeout to 10s for testing, you should see a 2 min timeout:

What issues does this PR fix or reference?
@W-19549750@