|
|
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
Добрый день! Возникла проблема с получением данных из 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') Версия БД во вложении. Помогите решить проблему с первым запросом. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 12:58:02 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisofORA-29269: ошибка сервера HTTP 502 - Bad Gateway Все ж написано. С сервера твой урл недоступен, пытайся достучаться не из своего броузера, а со стороны сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:10:04 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisof, залезь на сервер через консоль и попробуй сделать wget ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:12:39 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, к сожалению нет доступа в консоль. я разработчик и не более. а консоль это епархия админа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:35:06 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
Павел Воронцов, так собственно это я и пытаюсь сделать в процедуре БД. Но пока для отладки просто пытаюсь выполнить запрос что бы он вернул то что мне нужно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:36:46 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisof--Eugene--, к сожалению нет доступа в консоль. я разработчик и не более. а консоль это епархия админа.Значит шли предъяву админу с запросом и эксепшеном. И манагеру сообщи, это может быть БОЛЬШОЙ проблемой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:37:15 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
Павел Воронцов, админу БД или сервера? У нас чуть ли не за каждую отдельную микросхему отвечает отдельный человек... ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:40:38 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisofПавел Воронцов, админу БД или сервера? У нас чуть ли не за каждую отдельную микросхему отвечает отдельный человек... )Манагеру, проджект манагеру, руководителю всех одминов и каждому одмину, орхитектору системы и в спортлото. Я не шучу, эскалируйте проблему, у вас там ПРОБЛЕМА и если ты, как разработчик, не донесешь ее сейчас до всех заинтересованных, то все шишки посыпятся на тебя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:49:17 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
Павел Воронцов, т.е. с точки зрения написания кода, я все сделал правильно. проблемы в настройках БД/сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:53:13 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisofПавел Воронцов, т.е. с точки зрения написания кода, я все сделал правильно. проблемы в настройках БД/сервера.Именно. Добавлю - проблема в непродуманной архитектуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2016, 13:54:58 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, Оказалось что запрос возвращает данные в формате JSON: {"data": {"session_key": "3d3feaacc0c41a3e4177887623778b4e"}, "success": true} Если открыть его в IE это сразу можно понять. Я просто им не пользуюсь, а админ пробовал его открыть через консоль wget'ом. Со слов админа, наша 11 версия БД не поддерживает этот формат. В общем пока не понятно что делать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 12:37:23 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisof--Eugene--, Оказалось что запрос возвращает данные в формате JSON: {"data": {"session_key": "3d3feaacc0c41a3e4177887623778b4e"}, "success": true} Если открыть его в IE это сразу можно понять. Я просто им не пользуюсь, а админ пробовал его открыть через консоль wget'ом. Со слов админа, наша 11 версия БД не поддерживает этот формат. В общем пока не понятно что делать... парсить как varchar2\clob ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 12:40:37 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
eev, т.е. не через httpuritype делать запрос к серверу, а htp request и т.д. уверен что так сработает? в смысле той же ошибки не будет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 12:47:58 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisofeev, т.е. не через httpuritype делать запрос к серверу, а htp request и т.д. уверен что так сработает? в смысле той же ошибки не будет... это уж твое дело ошибки править ) https://oracle-base.com/articles/misc/retrieving-html-and-binaries-into-tables-over-http#httpuritype ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 13:04:03 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
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> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 13:10:52 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
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. или сделано такими же подельщиками ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:07:03 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
eevчитай их г... api. или сделано такими же подельщикамимноговероятно, что так (не)настроен местечковый прокси, прописанный у пользователя, запустившего бд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:12:25 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
eev, это результат запроса через utl_http.begin_request. utl_http.get_response возвращает код статуса (status_code) 502. т.е. Bad Gateway ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:13:12 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
-2-, при чем тут прокси? выше же написано, что через консоль БД в wget запрос отрабатывает. не отрабатывает (502- Bad Gateway) в БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:16:29 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisof, А дело случайное в каких-то левых символах? Например &?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:33:18 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
xtender, ну вообще это стандарт передачи в http запрос параметров. тем более что в браузере же он выполняется... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:36:24 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
fetisofxtender, ну вообще это стандарт передачи в http запрос параметров. тем более что в браузере же он выполняется... А вы читали доку по этому API ? "При получении данных методом GET необходимо передавать заголовок "Accept" со значением "application/json" или "application/xml". Если заголовок не передан, то будет возвращена 502 ошибка." Хидеры проставьте соответствующие в запросе и все выполниться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:59:52 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
ora601, в той что мне прислали про это не было. Сейчас попробую. Спасибо!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 16:43:46 |
|
||
|
XML из HTTP запроса
|
|||
|---|---|---|---|
|
#18+
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> СПАСИБО!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 17:00:11 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39257907&tid=1888067]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 225ms |
| total: | 378ms |

| 0 / 0 |
