WinHttpRequest с логином и паролем - Разные статьи блога - Примеры кода VBA

Содержание

Из книги Amazon Web Services я узнал, что чрезвычайно легко получить доступ к веб-сервису REST с помощью VBA и импортировать данные в список XML.

После просмотра книги Amazon не хватало одной части: как при необходимости отправить логин и пароль с запросом. Оказывается, все очень просто. Для отправки логина и пароля просто добавьте одну дополнительную команду WinHttpRequest.SetCredentials (пример кода ниже)

В последнее время я пытался улучшить свои знания XML (или их отсутствие), работая над учебным проектом с использованием веб-служб Bloglines, которые разрешают запросы HTTP и возвращают XML (OPML, непрочитанные элементы и т. Д.).

Кривая обучения, с которой я столкнулся, заключалась в том, что вместо того, чтобы просто проталкивать XML через карту в ячейки, я хотел использовать MSXML2 (XML-синтаксический анализатор Excel), чтобы получить полный контроль над данными для заполнения Treeviews, Listboxes и других элементов UserForm.

Цель проекта - прочитать мои подписки на блог в Excel (я готов на 60%), вроде как в версии EZRSS от Colo для Bloglines, а затем, возможно, перенести усилия в OutLook, когда я закончу (еще одна кривая обучения).

Вот пример кода для извлечения ваших подписок на Bloglines в Excel, он отправляет ваше имя пользователя и пароль для аутентификации:

 'HttpRequest SetCredentials flags. Const HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0 Private Sub ListSubs () Dim MyRequest As New WinHttpRequest MyRequest.Open "GET", _ "http://rpc.bloglines.com/listsubs" 'Установить учетные данные MyRequest.SetCredentials "PASSWORD", "_ HTTPREQUEST_SETCREDENTIALS_FOR_SERVER 'Отправить запрос. MyRequest.Send 'И получаем ответ MsgBox MyRequest.ResponseText End Sub 

Примечания:

Установить ссылку на Microsoft WinHTTP Services

Замените USERNAME и PASSWORD информацией о ваших блогах.

Это возвращает XML в msgbox для демонстрации, вы можете импортировать его как карту или загрузить в MSXML2.DOMDocument (у меня есть рабочий код, я все еще экспериментирую, я буду следить). Вот фрагмент сообщения msgbox:

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave