Ответ
SSR и клиент-серверная архитектура совместимы. SSR означает, что сервер генерирует HTML перед отправкой клиенту, но после загрузки страницы клиентский JavaScript может взять управление на себя (гидрация). Это позволяет использовать API, WebSockets и другие клиент-серверные взаимодействия.
Пример с Next.js (SSR + клиентские запросы):
export async function getServerSideProps() {
const res = await fetch('https://api.example.com/data');
const data = await res.json();
return { props: { data } };
}
function Page({ data }) {
// Клиентский запрос после гидрации
const [moreData, setMoreData] = useState(null);
useEffect(() => {
fetch('/api/more').then(res => res.json()).then(setMoreData);
}, []);
return <div>{/* ... */}</div>;
}