powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
9 сообщений из 9, страница 1 из 1
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795621
smart12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Не могу получить ответ при попытки дернуть URL (' http://IP/api/sub/beat)....

Версия - Oracle Database 12c Enterprise Edition Release 12.1.0.2.0

Запускаю:

DECLARE
reslt CLOB;
BEGIN

utl_http.set_body_charset('UTF-8');
apex_web_service.g_request_headers(1).name:= 'Content-Type';
apex_web_service.g_request_headers(1).value:= 'application/json';
apex_web_service.g_request_headers(2).name:='Host';
apex_web_service.g_request_headers(2).value:='test.test.ru';

reslt := apex_web_service.make_rest_request(p_url => 'http://IP/http://IP/api/sub/beat'
,p_http_method => 'GET');

insert into json_table values(reslt, sysdate); commit;

end;

В таблицу вставляется пустой "CLOB" и "системная дата"
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795627
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smart12345 http://IP/http://IP/api/sub/beat Вставь в браузер.
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795629
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В браузере-то работает?

Apex_web_service не пользовал, работает utl_http.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
create or replace procedure http_req is

  errmsg          varchar2(2000);
  v_req           varchar2(1000);
  lo_req          utl_http.req;
  lo_resp         utl_http.resp;
  v_json          varchar2(30000);
  
begin
  
  v_req := 'http://server./test.php?p_date=';
  v_req := v_req ||to_char(sysdate, 'YYYY-MM-DD')||'%20'||to_char(sysdate, 'HH24:MI');
  --v_req := v_req ||to_char(sysdate, 'YYYY-MM-DD')||'%20'||'00:00';
  lo_req := utl_http.begin_request(v_req);
  utl_http.set_header(lo_req, 'user-agent', 'Oracle UTL_HTTP');
  lo_resp := utl_http.get_response(lo_req);
  utl_http.read_text(lo_resp, v_json, 30000);
  utl_http.end_response(lo_resp);
  update t set c = v_json;
  ...

...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795681
smart12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dmdmdm,

В браузери, нет. Так как доступ только через БД. Есть ответ по CURL в RH 7

По проце вылетает ошибка.

create or replace procedure billing.http_req is

v_req varchar2(1000);
lo_req utl_http.req;
lo_resp utl_http.resp;
v_json varchar2(30000);

begin

v_req := 'http://IP/http://IP/api/sub/beat';
v_req := v_req ||to_char(sysdate, 'YYYY-MM-DD')||'%20'||to_char(sysdate, 'HH24:MI');
lo_req := utl_http.begin_request(v_req);
utl_http.set_header(lo_req, 'user-agent', 'Oracle UTL_HTTP');
lo_resp := utl_http.get_response(lo_req);
utl_http.read_text(lo_resp, v_json, 30000);
insert into json_table values(v_json, sysdate); commit;
utl_http.end_response(lo_resp);
end;
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795684
smart12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39795698
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Каждое затруднение сразу кидать на форум - неправильно. Поработайте сами.

Поиск .

Пример .
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39796065
smart12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dmdmdm,

Пробовал все возможный варианты utl_http и apex_web_service возвращают пустышки.

А вот так вот есть ответ:

curl -X GET -H "Host:test.test.ru" -H "Content-Type: application/json" "'http://IP/api/sub/beat'"

{"code":0,"status":0}


curl -H "Host:test.test.ru" http://IP/api/sub/beat
,
{"code":0,"status":0}
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39796066
smart12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ!!!
Помогите перевести запрос curl в PL/SQL, не могу получить ответ {"code":0,"status":0}. В PL/SQL возвращает пустые значение.

curl -X GET -H "Host:test.test.ru" -H "Content-Type: application/json" "'http://IP/api/sub/beat'"

{"code":0,"status":0}


curl -H "Host:test.test.ru" http://IP/api/sub/beat
,
{"code":0,"status":0}
...
Рейтинг: 0 / 0
Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
    #39796123
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smart12345Пробовал все возможный варианты

Варианты-то пишите.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как выполнить HTTP запрос в PL/SQL который в результате выдаст ответ JSON
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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