External API calls from the frontend or backend?
<p><strong>Scenario:</strong>
I have a Node and Angular web app.
It needs to call an external api (a third party service) for data (more specifically this: <a href="https://api.represent.me/api/questions/" rel="noreferrer">https://api.represent.me/api/questions/</a>).</p>

<p><strong>Question:</strong>
Is it better to make this external call from the Angular frontend: <code>GET http://thirdpartyservice.com/api/data</code> or have the frontend calling a same domain Node endpoint: <code>GET http://example.com/node-backend-api</code> which then calls <code>GET http://thirdpartyservice.com/api/data</code> which then fetches and processes the data from the third party api before passing it back to angular?</p>

<p><strong>Thoughts:</strong></p>

<ul>
<li>I guess two api calls is less desirable, but it is on the same domain
so would this not really be an issue?</li>
<li>GETing from the Node side would be more secure (especially if secret
keys were used), and also mask the fact that a third party service is
used.</li>
<li>CORS stuff might get in the way if calling from the frontend.</li>
<li>Is context key here, e.g. calling font apis from the
frontend is probably best, but fetching and needing to process data
is probably better from the backend.</li>
</ul>

<p>What do others recommend (and do) and are there any other for or against points to add to the 'thoughts' too?</p>