Serviços da Web RESTful - Statelessness
De acordo com a arquitetura REST, um serviço da Web RESTful não deve manter um estado de cliente no servidor. Essa restrição é chamada de apatridia. É responsabilidade do cliente passar seu contexto para o servidor e, em seguida, o servidor pode armazenar esse contexto para processar a solicitação posterior do cliente. Por exemplo, a sessão mantida pelo servidor é identificada pelo identificador de sessão passado pelo cliente.
Os serviços da Web RESTful devem aderir a essa restrição. Vimos isso no capítulo Serviços da Web RESTful - Métodos , que os métodos de serviço da Web não armazenam nenhuma informação do cliente a partir do qual são chamados.
Consider the following URL −
https: // localhost: 8080 / UserManagement / rest / UserService / users / 1
Se você acessar a url acima usando seu navegador ou um cliente baseado em java ou usando Postman, o resultado será sempre o XML do usuário cujo Id é 1 porque o servidor não armazena nenhuma informação sobre o cliente.
<user>
<id>1</id>
<name>mahesh</name>
<profession>1</profession>
</user>
Vantagens da apatridia
A seguir estão os benefícios da apatridia em RESTful Web Services -
Os serviços da Web podem tratar cada solicitação de método independentemente.
Os serviços da Web não precisam manter as interações anteriores do cliente. Isso simplifica o design do aplicativo.
Como o HTTP é um protocolo sem estado, os serviços da Web RESTful funcionam perfeitamente com os protocolos HTTP.
Desvantagens da apatridia
A seguir estão as desvantagens da ausência de estado em RESTful Web Services -
Os serviços da Web precisam obter informações extras em cada solicitação e, em seguida, interpretar para obter o estado do cliente, caso as interações com o cliente precisem ser cuidadas.