Question: I have a node.js GET API endpoint that calls some backend services to get data.

```
app.get('/request_backend_data', function(req, res) {

   ---------------------
}

```

When there is a delay getting a response back from the backend services, this endpoint(request\_backend\_data) is getting triggered exactly after 2 minutes. I have checked my application code, but there is no retry logic written anywhere when there is a delay.
Does node.js API endpoint gets called twice in any case(like delay or timeout)?

Answer: 
There might be a few reasons:

* some chrome extensions might cause bugs. Those chrome extensions have been causing a lot of issues recently. run your app on a different browser. If there is no issue, that means it is chrome-specific problem.
* express might be making requests for favicon.ico. In order to prevent this, use this module : <https://www.npmjs.com/package/serve-favicon>
* add CORS policy. Your server might sending preflight requests Use this npm package: <https://www.npmjs.com/package/cors>
No there is no default timeouts in nodejs or something like that.

Look for issue at your frontend part:

1. can be javascript fetch api with 'retry' option set
2. can be messed up RxJS operators chain which emits events implicitly and triggers another one REST request
3. can be entire page reload on timeout which leads to retrieve all neccessary data from backend
4. can be request interceptors (in axios, angular etc) which modify something and re-send

... many potential reasons, but not in backend (nodejs) for sure

Just make simple example and invoke your nodejs 'request\_backend\_data' endpoint with axois or xmlhttprequest - you will see that problem is not at backend part.