title: How do I make sure API calls returns data in order the request are sent?
body: <p>I have to make an API call asking for data whenever a user types something in a text box. The payload of that API call is what the user types. Now I want to preserve the order for the response too, but without making these calls synchronous as it is going to hang up the UI.</p>
  <p>Right now what is happening is sometimes, the third call returns faster than the 1st call, but I want data in order of the request they are sent.</p>
  <pre><code>    handleChange(e)
      {
        apiCall(e.target.value)
      }
  </code></pre>
  <p>Whenever user types into the search box (html input field), handleChange is called. Suppose user types <em>a</em>, an api call is made with payload <em>a</em>. Now when user types <em>n</em>, an api call us made with payload <em>an</em>.</p>
  <p>The problem that I'm having is that sometimes the second call returns the data faster than the first, but I want the order of the requests to be preserved in response as well without making these calls synchronous.</p>