Cookies em serviços HTTP


Bindings baseados em HTTP, como por exemplo BasicHttpBinding ou WSHttpBinding, possuem uma propriedade booleana chamada AllowCookies. O nome desta propriedade pode parecer confuso, pois a finalidade dela não é permitir que o binding utilize ou não cookies, mas sim determinar quem deverá manipulá-los.

Quando esta propriedade estiver definida como True, o próprio runtime do WCF irá gerenciar os cookies. Isso quer dizer que ele criará uma instancia da classe CookieContainer e a associará ao serviço, utilizando-a para todas as requisições, ou seja, todo e qualquer cookie retornardo pelo serviço será automaticamente reenviado nas futuras requisições, sem a necessidade de controlar como isso é realizado.

Já quando a propriedade AllowCookies for definida como False (que é o padrão), o WCF não irá gerenciar os cookies. Isso quer dizer que entre as chamadas das operações do lado do cliente, será necessário que voce recupere os possíveis cookies retornados pelo serviço e os adicione novamente para efetuar uma posterior requisição. Como podemos perceber, ao contrário da opção anterior, devemos controlar totalmente a captura, manipulação e o envio para o serviço. Voce deve ter uma atenção especial aqui, já que uma das características do WCF é ser independente de protocolo e, se dentro da implementação do serviço voce tentar manipular essas informações (exclusivas do HTTP), voce começará a ter uma afinidade com tal protocolo.

Anúncios

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s