Google Cloud Professional Cloud Developer — Question 4
You are writing a single-page web application with a user-interface that communicates with a third-party API for content using XMLHttpRequest. The data displayed on the UI by the API results is less critical than other data displayed on the same web page, so it is acceptable for some requests to not have the API data displayed in the UI. However, calls made to the API should not delay rendering of other parts of the user interface. You want your application to perform well when the API response is an error or a timeout.
What should you do?
Answer options
- A. Set the asynchronous option for your requests to the API to false and omit the widget displaying the API results when a timeout or error is encountered.
- B. Set the asynchronous option for your request to the API to true and omit the widget displaying the API results when a timeout or error is encountered.
- C. Catch timeout or error exceptions from the API call and keep trying with exponential backoff until the API response is successful.
- D. Catch timeout or error exceptions from the API call and display the error response in the UI widget.
Correct answer: B
Explanation
The correct answer is B because setting the asynchronous option to true allows other parts of the user interface to render without waiting for the API response, which improves performance. Option A is incorrect as it would block rendering, leading to a poor user experience. Options C and D do not align with the requirement to avoid delays in rendering, as they focus on handling errors rather than optimizing the user interface's performance during API calls.