powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / XML из HTTP запроса
24 сообщений из 24, страница 1 из 1
XML из HTTP запроса
    #39257039
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Возникла проблема с получением данных из XML который формируется http-запросом.

Что я делаю:

Беру запрос http://api.comagic.ru/api/login/?login= [мой логин]&password=[мой пароль] и выполняю его в браузере.

Запрос возвращает данные:

<root>
<data type="dict">
<session_key type="str">f090284a8632247d07371e9888ca55a2</session_key>
</data>
<success type="bool">true</success>
</root>

Пытаюсь выполнить тот же самый запрос в БД, получаю ошибку:

select * from xmltable('//data' passing httpuritype(' http://api.comagic.ru/api/login/?login= [мой логин]&password=[мой пароль]').getXML()
columns session_key varchar2(100) path 'session_key')

ORA-29273: сбой запроса HTTP
ORA-06512: на "SYS.UTL_HTTP", line 1817
ORA-29269: ошибка сервера HTTP 502 - Bad Gateway
ORA-06512: на "SYS.HTTPURITYPE", line 34
ORA-06512: на "SYS.HTTPURITYPE", line 97

Однако, если XML подставить сразу в запрос, то то что мне нужно он возвращает:

select * from xmltable('//data' passing XMLType('<?xml version="1.0" encoding="UTF-8" ?><root><data type="dict"><session_key type="str">f090284a8632247d07371e9888ca55a2</session_key></data><success type="bool">true</success></root>')
columns session_key varchar2(100) path 'session_key')

Для примера нашел запрос который возвращает данные:

select * from xmltable('//item' passing httpuritype('http://webservices.lb.lt/ExchangeRates/ExchangeRates.asmx/getListOfCurrencies').getXML()
columns currency varchar2(10) path 'currency')

Версия БД во вложении.

Помогите решить проблему с первым запросом.

Спасибо.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257049
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofORA-29269: ошибка сервера HTTP 502 - Bad Gateway
Все ж написано. С сервера твой урл недоступен, пытайся достучаться не из своего броузера, а со стороны сервера.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257052
Фотография --Eugene--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisof,

залезь на сервер через консоль и попробуй сделать wget
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257075
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
--Eugene--,

к сожалению нет доступа в консоль. я разработчик и не более. а консоль это епархия админа.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257077
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Павел Воронцов, так собственно это я и пытаюсь сделать в процедуре БД. Но пока для отладки просто пытаюсь выполнить запрос что бы он вернул то что мне нужно...
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257078
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisof--Eugene--,

к сожалению нет доступа в консоль. я разработчик и не более. а консоль это епархия админа.Значит шли предъяву админу с запросом и эксепшеном. И манагеру сообщи, это может быть БОЛЬШОЙ проблемой.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257082
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Павел Воронцов, админу БД или сервера? У нас чуть ли не за каждую отдельную микросхему отвечает отдельный человек... )
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257090
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofПавел Воронцов, админу БД или сервера? У нас чуть ли не за каждую отдельную микросхему отвечает отдельный человек... )Манагеру, проджект манагеру, руководителю всех одминов и каждому одмину, орхитектору системы и в спортлото. Я не шучу, эскалируйте проблему, у вас там ПРОБЛЕМА и если ты, как разработчик, не донесешь ее сейчас до всех заинтересованных, то все шишки посыпятся на тебя.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257096
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Павел Воронцов, т.е. с точки зрения написания кода, я все сделал правильно. проблемы в настройках БД/сервера.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257098
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofПавел Воронцов, т.е. с точки зрения написания кода, я все сделал правильно. проблемы в настройках БД/сервера.Именно. Добавлю - проблема в непродуманной архитектуре.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257744
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
--Eugene--,

Оказалось что запрос возвращает данные в формате JSON:
{"data": {"session_key": "3d3feaacc0c41a3e4177887623778b4e"}, "success": true}

Если открыть его в IE это сразу можно понять.
Я просто им не пользуюсь, а админ пробовал его открыть через консоль wget'ом.
Со слов админа, наша 11 версия БД не поддерживает этот формат.
В общем пока не понятно что делать...
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257747
eev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisof--Eugene--,

Оказалось что запрос возвращает данные в формате JSON:
{"data": {"session_key": "3d3feaacc0c41a3e4177887623778b4e"}, "success": true}

Если открыть его в IE это сразу можно понять.
Я просто им не пользуюсь, а админ пробовал его открыть через консоль wget'ом.
Со слов админа, наша 11 версия БД не поддерживает этот формат.
В общем пока не понятно что делать... парсить как varchar2\clob
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257752
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
eev,

т.е. не через httpuritype делать запрос к серверу, а htp request и т.д.
уверен что так сработает?
в смысле той же ошибки не будет...
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257767
eev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofeev,

т.е. не через httpuritype делать запрос к серверу, а htp request и т.д.
уверен что так сработает?
в смысле той же ошибки не будет... это уж твое дело ошибки править ) https://oracle-base.com/articles/misc/retrieving-html-and-binaries-into-tables-over-http#httpuritype
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257773
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
eev,

нет, через utl_http.begin_request, utl_http.get_response и т.д. не помогло. та же ошибка при выполнении запроса.
utl_http.read_text выдал ее в виде текса:

<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.9.9</center>
</body>
</html>
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257899
eev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofeev,

нет, через utl_http.begin_request, utl_http.get_response и т.д. не помогло. та же ошибка при выполнении запроса.
utl_http.read_text выдал ее в виде текса:

<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.9.9</center>
</body>
</html>
чего "нет"? "нет" - что не понимаешь? :) тебе теги в респонсе ни о чем не говорят? это utl_http их что ли добавил? :) читай их г... api. или сделано такими же подельщиками
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257907
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eevчитай их г... api. или сделано такими же подельщикамимноговероятно, что так (не)настроен местечковый прокси, прописанный у пользователя, запустившего бд.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257909
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
eev, это результат запроса через utl_http.begin_request.
utl_http.get_response возвращает код статуса (status_code) 502.
т.е. Bad Gateway
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257916
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,

при чем тут прокси? выше же написано, что через консоль БД в wget запрос отрабатывает.
не отрабатывает (502- Bad Gateway) в БД.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257936
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
fetisof,

А дело случайное в каких-то левых символах? Например &?)
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257943
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
xtender, ну вообще это стандарт передачи в http запрос параметров. тем более что в браузере же он выполняется...
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39257963
ora601
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fetisofxtender, ну вообще это стандарт передачи в http запрос параметров. тем более что в браузере же он выполняется...

А вы читали доку по этому API ?

"При получении данных методом GET необходимо передавать заголовок "Accept" со значением "application/json" или "application/xml". Если заголовок не передан, то будет возвращена 502 ошибка."

Хидеры проставьте соответствующие в запросе и все выполниться.
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39258008
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ora601, в той что мне прислали про это не было. Сейчас попробую. Спасибо!!!
...
Рейтинг: 0 / 0
XML из HTTP запроса
    #39258026
fetisof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ora601, проканало.
написал:
utl_http.set_header(l_http_request, 'Accept', 'application/xml');

вернуло:
<?xml version="1.0" encoding="UTF-8" ?><root><data type="dict"><session_key type="str">4048020b144ce512faf1f78242d77271</session_key></data><success type="bool">true</success></root>

СПАСИБО!!!
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / XML из HTTP запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]