quarta-feira, 15 de abril de 2015

Análise do Vídeo Web Api Configuration

Segue um post com anotações do vídeo abaixo que dá boas dicas para configuração de Web Api do Channel 9.

Media Formatter (Formatador de Mídia)

  • Media type = MIME type
    • text/html, application/xml, application/json
  • Cabeçalhos
    • Accept = o que o cliente quer
    • Content-Type = o que o server retorn
  • Formatos padrões : XML, JSON, BSON(JSON binários), form-encoded
  • É possível criar formatos customizados e foi mostrado um exemplo de um que retornava um csv (comman separated value) que pode ser aberto em excel
  • SerializerSettings pode definir várias configurações como ContractResolver (para definir o CamelCase)

Routes and Actions

· Citada a forma de definar a rota, parecida com a do MVC
· Possibilidade de definir os parâmetros e valores esperados
· Mostrado o esquema abaixo e resolução de controller e action

Attributes Actions

A forma de roteamento anterior leva em consideração o tipo de actions e parâmetros para escolher o método correto do controller para executar. Isso pode ser confuso.
Para dar mais controle do que é executado é possível utilizar o Attribute Action, que permite marcar qual o roteamento esperado pelo controller e pelo método.
Os dois fontes dessa pasta mostram as diferenças de utilização:
https://github.com/MicrosoftLearning/WebAPIDesign/tree/master/03%20-%20Configuration/03bRoutingActions/Controllers