- Building RESTful Web Services with PHP 7
- Haafiz Waheed ud din Ahmad
- 320字
- 2021-07-03 00:02:15
Stateless
Client server communication is stateless. Each request coming from the client will have all the information required to serve a request. This means there is no state in this communication other than what is in the request. The response which the client will get will be based on the request without looking at any state other than what is in request.
If the session needs to be maintained, the session will be stored based on a token or identifier which is coming in the request. So if we look at an example of a web request, then the flow of HTTP is no more than a request sent by the client to the server and a response, sent back to the client from the server, as shown in the following diagram:

If a session needs to be maintained, the session data will be stored on the server, while the session identifier will be sent back to the client. In subsequent requests, the client will include that session identifier in every request by which the server will identify the client and load the related session's data as explained in the following diagram:

And in subsequent requests:

So REST is stateless. To maintain the state, one needs to pass an identifier or any other information, to logically group different requests to maintain a session in the request. If no such identifier is passed in the request, the server will never know if those two requests are from same client.
The advantage of statelessness is simplicity. The same requests will not result in different responses unless the request parameters are changed. It will return different results based on different request parameters not due to some sort of state. Even the state depends on requests, as shown in the preceding example. So that session identifier is in the request, which can result in a different state and, hence, results in a different response.
- 現代C++編程:從入門到實踐
- Python數據分析入門與實戰
- INSTANT OpenCV Starter
- Python從小白到大牛
- 信息可視化的藝術:信息可視化在英國
- 深入淺出Prometheus:原理、應用、源碼與拓展詳解
- Monitoring Elasticsearch
- Oracle JDeveloper 11gR2 Cookbook
- 單片機應用與調試項目教程(C語言版)
- Windows內核編程
- Swift 4 Protocol-Oriented Programming(Third Edition)
- UNIX Linux程序設計教程
- 軟件項目管理實用教程
- 機器學習微積分一本通(Python版)
- Serverless Web Applications with React and Firebase