Pergunta

Eu não estou familiarizado com o WCF, mas eu pensei que eu vou aprender enquanto tentando consumir um serviço já existente.

Uma das APIs REST que pensei foi o Twitter API . Pensei em desenvolver um cliente WPF que só vai saída para a tela os últimos 5 tweets de um determinado usuário do Twitter.

Eu queria saber se alguém poderia por favor descrever brevemente os passos que precisa tomar, a Visual Studio para consumir estes serviços, usando WCF (classes, feiticeiros, proxies etc.). Eu já sei como apenas chamá-los usando uma solicitação da web e analisar o XML que retorna -. Eu realmente quero ver a parte WCF no trabalho

Agradecemos antecipadamente a anyoine que ajuda ainda mais a minha educação:)

Foi útil?

Solução

Confira Kirk Evans Criando um RESTO Twitter cliente com WCF . As últimas melhorias para WCF em .NET 3.5 SP1 fazer muitas interfaces RESTful mais fácil.

Além disso, verifique o Twitter WCF 3.5 API Declaração Biblioteca a partir do site MSDN.

Aqui está ainda outro exemplo - AVISO partir de 2/3/10 link é "borked"

Outras dicas

Não há nenhum benefício para usando WCF para consumir uma API baseado em HTTP, como a API do Twitter. System.NET.HttpWebRequest é mais do que suficiente. Na verdade eu suspeito que você terá alguma dificuldade. WCF é muito mais fácil para começar a trabalhar quando você tem WCF em ambas as extremidades do fio.

No entanto, se a API REST está retornando conteúdo Atom, então você pode usar as classes System.ServiceModel.Syndication a ajuda analisar a resposta.

EDIT: Desde que eu escrevi este post Microsoft lançou uma prévia de uma biblioteca cliente novo HTTP que faz um trabalho ainda melhor de consumir serviços RESTful.
Aqui está como você iria utilizá-lo para postar no Twitter:

var client = new HttpClient();
client.DefaultHeaders.Authorization = Credential.CreateBasic("username","password");
var form = new HttpUrlEncodedForm();
form.Add("status","Test tweet using Microsoft.Http.HttpClient");
var content = HttpContent.Create(form);
var resp = client.Post("http://www.twitter.com/statuses/update.xml", content);

Se você quiser mais detalhes sobre esta biblioteca cliente, eu estou no processo de escrever alguns posts sobre o assunto aqui .

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