Pergunta

Estou procurando alguns bons links com práticas recomendadas e exemplos de código sobre como criar DESCANSARserviços web completos usando .NET.

Além disso, qualquer outra informação que você possa ter sobre REST seria muito apreciada.

Foi útil?

Solução

Serviços de dados ADO.Net torna muito fácil de construir e consumir Serviços da web RESTful no mundo .Net, mas mesmo assim é importante compreender os conceitos.Comparado ao WCF (que adicionou suporte REST posteriormente), o ADO.Net Data Services foi criado principalmente para REST.

Diretrizes para construir serviços Web RESTful tem todas as informações sobre os recursos que você precisa.

Este é outro útil entrada do blog:

As restrições de interface uniforme descrevem como um serviço construído para a Web pode ser um bom participante na arquitetura da Web.Essas restrições são descritas resumidamente a seguir:

1) Identificação de recursos:Um recurso é qualquer item de informação que pode ser nomeado e representado (por exemplo,um documento, o preço de uma ação em um determinado momento, o clima atual em Las Vegas, etc.).Os recursos do seu serviço devem ser identificados usando URIs.

2) Manipulação de recursos via representações:Uma representação é a representação física de um recurso e deve corresponder a um tipo de mídia válido.Usar tipos de mídia padrão como formatos de dados por trás do seu serviço aumenta o alcance do seu serviço, tornando-o acessível a uma ampla gama de clientes em potencial.A interação com o recurso deve ser baseada na recuperação e manipulação da representação do recurso identificado pelo seu URI.

3) Mensagens autodescritivas:Seguir os princípios de apatridia nas interações do seu serviço, usar tipos de mídia padrão e indicar corretamente a capacidade de cache das mensagens por meio do uso do método HTTP e cabeçalhos de controle garante que as mensagens sejam autodescritivas.Mensagens autodescritivas possibilitam que as mensagens sejam processadas por intermediários entre o cliente e o servidor sem impactar nenhum deles.

4) Hipermídia como motor do estado da aplicação:O estado do aplicativo deve ser expresso usando URIs e hiperlinks para transição entre estados.Esta é provavelmente a mais controversa e menos compreendida das restrições arquitetônicas estabelecidas no Dissertação de Roy Fielding.Na verdade, a dissertação de Fielding contém argumentos explícitos contra o uso de cookies HTTP para representar o estado do aplicativo para enfatizar esse ponto, embora seja frequentemente ignorado.

Outras dicas

Fundação de comunicação do Windows suporta modelo REST desde .NET 3.5.

Você pode encontrar documentação e exemplos de código no MSDN:

REST e POX

Alguns recursos para aprender REST:

A melhor introdução que li é a Livro Serviços Web RESTful, que vai além de explicar o modelo e os princípios e mostra como projetar um serviço web RESTful.O mais útil é sua lista de verificação sobre como escrever/especificar uma API REST:

  1. Descubra o conjunto de dados [ou seja,especifique o modelo de dados].
  2. Divida o conjunto de dados em recursos.Para cada tipo de recurso:
  3. Nomeie os recursos com URIs.
  4. Exponha um subconjunto da interface uniforme [ou seja,especificar quais métodos HTTP são usados ​​e o que eles fazem].
  5. Projete a(s) representação(ões) aceita(s) do cliente [por exemplo,o formato XML que você pode PUT ou POST].
  6. Projete a(s) representação(ões) servida(s) ao cliente [por ex.o XML que você recebe de volta].
  7. Integre este recurso aos recursos existentes, utilizando links e formulários hipermídia.
  8. Considere o curso típico dos eventos:o que deveria acontecer?[Isso é como um cenário principal de sucesso de caso de uso.]
  9. Considere as condições de erro.[Isso é como cenários de exceção de caso de uso.]

Os artigos do "Web RESTful"série em xml.com são uma ótima introdução.

O autor (Joe Gregorio, da fama do Protocolo de Publicação Atom) também publica regularmente artigos perspicazes sobre todas as coisas que repousam em seublog. "RESTify Day Trader"(A arquitetura REST aplicada a um aplicativo de negociação de ações de referência) é um bom ponto de partida.Eu também gosto "Por que tantos frameworks web Python?", que mostra a implementação de um pequeno framework web restful em Python.

Quando comecei a desenvolver serviços da web REST, li o REST API Design Rulebook de Mark Masse.Depois de conhecer o básico e a teoria, você será capaz de implementar REST com WCF, HTTPListener ou ServiceStack.Todas essas estruturas são .NET e estão bem documentadas ...

Eu recomendaria a você pilha de serviços (http://www.servicestack.net/) que haja informações suficientes na web para começar.

O WCF oferece a API da web ASP.NET, tudo bem, mas eu não a uso.

De qualquer forma, não existe um bom framework REST hoje, você tem que escolher um que você ache fácil de usar e então aplicar a teoria que aprendeu no livro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top