Чомусь дроти ніколи не перетинали це належним чином; оскільки ви можете імпортувати XML в Excel безпосередньо з URL -адреси, немає необхідності використовувати WINHTTP для виконання простих запитів веб -служби REST.
Спочатку я почав використовувати цю техніку після перегляду коду веб -служб Amazon, який використовує WinHTTP, проте це не обов’язково лише для запиту XML у веб -служби.
Підтвердження концепції: Ось приклад, який свідчить про використання API пошуку новин Yahoo для отримання останніх новин Yahoo на тему «Дан радше» в Excel. Для цього потрібна версія Excel, яка підтримує XML:
1. Виділіть, а потім скопіюйте цей URl:
http://api.search.yahoo.com/WebSearchService/V1/webSearch?appid=YahooDemo&query=Dan+Rather&results=10
2. В Excel перейдіть до Дані-> XML-> Імпортувати
3. У полі Ім'я файлу скористайтеся ярликом вставки (CTRL-V), щоб ввести щойно скопійовану URL-адресу, і натисніть клавішу Enter.
4. Excel запропонує клітинці перерахувати результати новин Yahoo
Тож нам вдалося скористатися веб -службою Yahoo Rest для отримання даних в Excel без WINHTTP. Майте на увазі, що це приклад голих кісток. Щоб пояснити це, додайте карту до книги та використовуйте XMLMaps.import замість цього з прикладів WINHTTP, які я використовував.
Коли я в даний час буду використовувати WINHTTP з веб -службами REST? Моє найкраще припущення досі:
1. Коли для послуги потрібен вхід. У цьому випадку мені потрібно використовувати SetCredentials
2. Коли я не хочу імпортувати дані XML на карту XML, я просто хочу мати необроблені дані. Наприклад, я хочу маніпулювати даними перед тим, як їх записати в електронну таблицю, або, можливо, переміщатися по XML і вибирати, які дані відображати на основі спеціальних критеріїв.
Нарешті, XMLMAPS.Import і WINHTTP працюють для споживання веб -служб REST, однак для останнього потрібно ще кілька рядків коду. Я буду продовжувати спотикатися з веб -службами, поки не вивчу його (і звичайно: виправте це). Цікаво, чи ще хтось має приклади REST з використанням Excel?