按照REST架構,一個RESTful Web服務不應該繼續伺服器的用戶端的狀態。這種限制被稱為無狀態。它負責客戶以它的上下文傳遞給伺服器,然後伺服器可以儲存這樣的上下文,以處理用戶端的進一步請求。例如,通過對談伺服器維護標識由用戶端傳遞對談識別符號。
RESTful Web服務應遵守此限制。我們已經看到了REST Web服務 - 方法教學,該Web服務方法不儲存它們從呼叫的用戶端的任何資訊。
考慮以下網址:
http://localhost:8080/UserManagement/rest/UserService/users/1
如果您使用的瀏覽器,使用基於Java的用戶端或使用postman,那麼輸入上面的網址,結果永遠是使用者XML ID為1,因為伺服器沒有儲存有關客戶的任何資訊。
<user> <id>1</id> <name>mahesh</name> <profession>1</profession> </user>
以下是無狀態的RESTful web服務的好處
Web服務可以獨立對待每一個方法的請求。
Web服務不需要維護用戶端之前的互動。它簡化了應用程式的設計。
由於HTTP本身是一個無狀態協定,RESTful Web服務無縫地與HTTP協定的工作。
以下是無狀態的RESTful web服務的缺點
Web服務需要得到每個請求的額外資訊,然後解釋得到的情況下用戶端互動用戶端的狀態都被照應。