WinHttpRequest com login e senha - Misc Bloglines - Exemplos de código VBA

Índice

Aprendi com a pasta de trabalho do Amazon Web Services que é extremamente fácil acessar um serviço da Web REST usando VBA e importar os dados para uma lista XML.

Uma peça que faltava depois de ver a pasta de trabalho da Amazon era como enviar também um login e uma senha com uma solicitação, se necessário. Acabou sendo muito simples. Para enviar um login e senha basta adicionar um comando adicional WinHttpRequest.SetCredentials (código de exemplo abaixo)

Tenho tentado melhorar meu conhecimento de XML recentemente (ou a falta dele) trabalhando em um projeto de aprendizagem usando os serviços da Web do Bloglines, que permite solicitações HTTP e retorna XML (OPML, itens não lidos, etc).

A curva de aprendizado que encontrei foi, em vez de simplesmente empurrar o XML por meio de um mapa para as células, eu queria usar o MSXML2 (analisador XML do Excel) para obter controle total dos dados para preencher Treeviews, Listboxes e outras coisas de UserForm.

O objetivo do projeto é ler minhas assinaturas de bloglines no Excel (estou 60% pronto), meio como uma versão do Bloglines do EZRSS de Colo e, em seguida, possivelmente transportar o esforço para OutLook quando eu terminar (outra curva de aprendizado).

Aqui está um exemplo de código para puxar suas assinaturas do Bloglines para o Excel, ele envia seu nome de usuário e senha para autenticação:

 'HttpRequest SetCredentials flags. HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0 Private Sub ListSubs () Dim MyRequest As New WinHttpRequest MyRequest.Open "GET", _ "http://rpc.bloglines.com/listsubs" 'Definir credenciais MyRequest.SetCredentials "USERNAME", "PASSWORD", _ HTTPREQUEST_SETCREDENTIALS_FOR_SERVER 'Enviar solicitação. MyRequest.Send 'E obtemos esta resposta MsgBox MyRequest.ResponseText End Sub 

Notas:

Defina uma referência para os serviços Microsoft WinHTTP

Substitua USERNAME e PASSWORD pelas informações do Bloglines

Isso retorna o XML para um msgbox para demonstração, você pode importá-lo em um mapa ou carregá-lo em um MSXML2.DOMDocument (eu tenho o código funcionando, ainda estou experimentando, vou acompanhar). Aqui está um snippet da msgbox:

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave