Я понимаю, что веб-сайт может иметь внешний интерфейс (клиент) и серверную часть (сервер), и что сервер выполняет вызовы «внешних» REST API, таких как woocommerce и т. д.
Почему нужно создавать целую структуру, называемую бэкэндом, чтобы выполнять вызовы REST API с использованием таких языков, как Node (Express)? Почему нельзя просто звонить во внешний интерфейс с помощью fetch('https://woocommerce/products')?
Обновлено: Спасибо всем за отправку ваших ответов, это очень помогло мне понять! Пожалуйста, не стесняйтесь продолжать и предоставлять любые другие идеи и особенно примеры того, почему ваш ответ как таковой поможет мне и другим будущим новичкам, которые могут столкнуться с этим вопросом.
В некоторых случаях вы обойдетесь с может без написания какого-либо бэкэнд-кода, но в целом ваш бэкэнд выполняет такие вещи, как: сохранение данных, которые не, в некотором внешнем API; используя учетные данные, к которым не хочет, чтобы произвольный клиент имел доступ; или предоставление дополнительной бизнес-логики для упрощения клиентского кода.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Итак, по идее, в новых браузерах они могут делать это с клиента, если на сервере установлен совместное использование ресурсов из разных источников. В отсутствие этого и в старых браузерах запросы к третьим сторонам будут заблокированы из-за политика одного происхождения.
Более того, во многих случаях вы не хотеть клиента для выполнения запросов напрямую, потому что тогда вам придется предоставить свои ключи API всем, у кого есть доступ к клиентскому коду. У некоторых сервисов есть способы обойти это (например, Firebase), но у большинства их нет.
На самом деле не требуется настраивать серверную часть. Есть много способов запустить сайт без настройки серверной части. Вы можете использовать сервисы BAAS, такие как Firebase
Но проблема с использованием только клиента заключается в том, что пользователь может видеть каждый запрос, сделанный клиентом. И получить доступ к отправленным данным или секретным ключам API, отправленным в запросе - это действительно плохо для безопасности и может привести к неправильному использованию.
Основные меры веб-безопасности предотвращают то, о чем вы спрашиваете.