Skip to content

Provide a way to set timeout on requests made by box-node-sdk #871

Description

@chenbauer

Is your feature request related to a problem? Please describe.

Currently the sdk sets no default timeout and provides no official configuration option to limit the request timeout. From @cypress/request documentation regarding timeouts:

Most requests to external servers should have a timeout attached, in case the server is not responding in a timely manner. Without a timeout, your code may have a socket open/consume resources for minutes or more.

During a recent Box outage our application requests were blocked by calls made by the sdk, which by default, retries 5 times before failing. We will reduce number of retries (which is configurable) but would also like a way to limit the request timeout.

Describe the solution you'd like

It would be great if we could set timeout per request (specifically for us - getAppUserTokens), but being able to set it globally in configure is also helpful.
Currently only uploadRequestTimeoutMS is officially supported -
https://rawgit.com/box/box-node-sdk/main/docs/jsdoc/global.html#UserConfigurationOptions

Describe alternatives you've considered

This is our current workaround -

this.boxSdk.configure({
            numMaxRetries: 2,
            request: { timeout: 2000 },
        });

Thanks!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions