WinHttpRequest med pålogging og passord - Diverse blogglinjer - VBA -kodeeksempler

Innholdsfortegnelse

Jeg lærte fra Amazon Web Services -arbeidsboken at det er ekstremt enkelt å få tilgang til en REST -webtjeneste ved hjelp av VBA og importere dataene til en XML -liste.

En manglende brikke etter å ha sett Amazon -arbeidsboken var hvordan du også sender en pålogging og passord med en forespørsel om nødvendig. Det viser seg å være veldig enkelt. For å sende en pålogging og passord, legg til en ekstra kommando WinHttpRequest.SetCredentials (eksempelkode nedenfor)

Jeg har prøvd å forbedre min XML -kunnskap i det siste (eller mangel på det) ved å jobbe med et læringsprosjekt ved hjelp av Bloglines Web Services, som tillater HTTP -forespørsler, og returnerer XML (OPML, uleste elementer osv.).

Læringskurven jeg møtte var i stedet for bare å skyve XML -en gjennom et kart inn i celler, jeg ønsket å bruke MSXML2 (Excel's XML -parser) for å få total kontroll over dataene for å fylle Treeviews, Listboxes og andre UserForm -ting.

Prosjektmålet er å lese blogglinjeabonnementene mine i Excel (jeg er 60% ferdig), omtrent som en Bloglines -versjon av Colos EZRSS, og deretter muligens overføre innsatsen til OutLook når jeg er ferdig (en annen læringskurve).

Her er eksempelkode for å trekke Bloglines -abonnementene dine inn i Excel, den sender brukernavn og passord for godkjenning:

 'HttpRequest SetCredentials -flagg. Const HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0 Private Sub ListSubs () Dim MyRequest As New WinHttpRequest MyRequest.Open "GET", _ "http://rpc.bloglines.com/listsubs" 'Set credentials MyRequest.SetCredentials "USERNAME", "PASS" HTTPREQUEST_SETCREDENTIALS_FOR_SERVER 'Send forespørsel. MyRequest.Send 'Og vi får dette svaret MsgBox MyRequest.ResponseText End Sub 

Merknader:

Angi en referanse til Microsoft WinHTTP Services

Erstatt USERNAME og PASSWORD med Bloglines -informasjonen din

Dette returnerer XML -en til en msgbox for demonstrasjon, du kan importere den til et kart eller laste den til et MSXML2.DOMDocument (jeg har arbeidskode, jeg eksperimenterer fortsatt, jeg følger opp). Her er et utdrag av meldingsboksen:

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave