Things start to get complicated with this model, also called client side rendered applications.
The client gets the JSON and then renders that data into the HTML on the page.
On the server side, the application is mostly an API that allows the client side to get the data it needs.
- Separate teams can work on the client side code and the server side code.
- The API can be used to other user interfaces, like a mobile application.
- You can make very nice and responsive user interfaces.
This is probably the most common way web applications are built, but I think that's changing.