Client-server architecture separates software into clients that request data or computation and servers that manage resources, authorize requests, and fulfill them. section 11.1 section 11.5
The architecture typically establishes these boundaries:
- Clients request information or operations on resources managed by servers. section 11.1
- Servers act as custodians of data and associated computation, checking authorization before responding. section 11.1 section 11.5
- REST applies the separation to independently evolving clients and servers, often using standardized resource operations. section 3.2
Web requests and REST resources
A web browser requests a resource from a web server: GET retrieves information, while POST, PUT, and DELETE request computations or state changes. REST APIs apply the same pattern to resources such as users, shipments, courses, or weather data. section 11.1 section 3.2
Compare dedicated client-server roles with peer-to-peer nodes, where each node can act as both client and server. section 11.1




