Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/получить данные через rest api - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » получить данные через rest api (Макросы/Sub)
получить данные через rest api
SuperMicha Дата: Воскресенье, 17.05.2020, 13:59 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Пытаюсь получить данные через rest api.
Пробовал и через WinHttpRequest и через MSXML2.ServerXMLHTTP60

Как только в строке запроса хоть одна русская буква - сразу вылетает с ошибкой

-2147012744 Сервер вернул недопустимый или не распознанный ответ. Причем скорее всего даже запрос не отправлялся.

Через Postman и через браузер - API работает. И без каких-либо header-ов.

Кто-то знает что делать?

Вот примеры кода.

[vba]
Код
Sub Макрос1()

Dim hRequest As Object

Set hRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
hRequest.SetTimeouts 200000, 200000, 200000, 200000
urlapi = "http://teamsoft9.pharmahrm.com:8000/get_pharmacy?request=Фkljbkyihgvkyv"
hRequest.Open "GET", urlapi, False
hRequest.Send

End Sub

Sub Макрос2()

Dim requestString As String
Dim request As MSXML2.ServerXMLHTTP60

requestString = "http://teamsoft9.pharmahrm.com:8000/get_pharmacy?request=Oфbject to request"
Set request = New ServerXMLHTTP60
request.Open "GET", requestString, False
request.Send

End Sub
[/vba]
 
Ответить
СообщениеПытаюсь получить данные через rest api.
Пробовал и через WinHttpRequest и через MSXML2.ServerXMLHTTP60

Как только в строке запроса хоть одна русская буква - сразу вылетает с ошибкой

-2147012744 Сервер вернул недопустимый или не распознанный ответ. Причем скорее всего даже запрос не отправлялся.

Через Postman и через браузер - API работает. И без каких-либо header-ов.

Кто-то знает что делать?

Вот примеры кода.

[vba]
Код
Sub Макрос1()

Dim hRequest As Object

Set hRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
hRequest.SetTimeouts 200000, 200000, 200000, 200000
urlapi = "http://teamsoft9.pharmahrm.com:8000/get_pharmacy?request=Фkljbkyihgvkyv"
hRequest.Open "GET", urlapi, False
hRequest.Send

End Sub

Sub Макрос2()

Dim requestString As String
Dim request As MSXML2.ServerXMLHTTP60

requestString = "http://teamsoft9.pharmahrm.com:8000/get_pharmacy?request=Oфbject to request"
Set request = New ServerXMLHTTP60
request.Open "GET", requestString, False
request.Send

End Sub
[/vba]

Автор - SuperMicha
Дата добавления - 17.05.2020 в 13:59
krosav4ig Дата: Воскресенье, 17.05.2020, 15:25 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениекросс

Автор - krosav4ig
Дата добавления - 17.05.2020 в 15:25
boa Дата: Понедельник, 18.05.2020, 15:01 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 550
Репутация: 167 ±
Замечаний: 0% ±

365


 
Ответить
СообщениеВам надо Преобразование строки, содержащей кириллицу, в URLEncode

Автор - boa
Дата добавления - 18.05.2020 в 15:01
Мир MS Excel » Вопросы и решения » Вопросы по VBA » получить данные через rest api (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!