The 30 second answer
The frontend now knows every service URL and contract, which couples clients to internals and makes versioning painful. You get many round trips on mobile, and auth, rate limiting, TLS, CORS, and logging get duplicated six times. Every service is publicly exposed, so the attack surface grows, and refactoring service boundaries breaks clients. Prefer a gateway or a backend-for-frontend per client type.
Frontend now knows every service URL and API (coupling, versioning pain), makes many round trips (chatty, slow on mobile), and cross-cutting concerns — auth, rate limiting, TLS, CORS, logging — get duplicated in six places; every service is publicly exposed (bigger attack surface); refactoring service boundaries breaks clients. Alternatives: gateway or BFF (backend-for-frontend) per client.
Sources: