Как сделать запрос на отдых в PL/SQL?

72
8

У меня есть следующий запрос cURL, который я хочу сделать в PL/SQL:

curl -i 
-H « Authorization: AUTH xxxx:1539335594582:1:HMAC »
-X GET http://example.com/api/accounts

Я попробовал следующий код. Он не работает (я получаю ошибку сервера: ваш браузер отправил запрос, который мы не могли понять.), И я не уверен, правильно ли я делаю это в PL/SQL:

URL varchar2(250);
Header varchar2(32000);
Response varchar2(32000);

URL := 'http://example.com/api/accounts';
Header := 'Authorization: AUTH xxxx:1539335594582:1:HMAC';
Response := apex_web_service.make_rest_request(p_url => URL || '?' || Header, p_http_method => 'GET');

Может ли кто-нибудь помочь?

Спасибо Cheers,

спросил(а) 2018-10-12T12:58:00+03:00 2 года, 1 месяц назад
1
Решение
59

Заголовки HTTP не могут быть объединены в URL-адрес, подобный этому. Вам необходимо установить заголовки перед вызовом make_rest_request, например

declare
URL varchar2(250);
Response varchar2(32000);
begin
URL := 'http://example.com/api/accounts';
apex_web_service.g_request_headers.delete();
apex_web_service.g_request_headers(1).name := 'Authorization';
apex_web_service.g_request_headers(1).value := 'AUTH xxxx:1539335594582:1:HMAC';
Response := apex_web_service.make_rest_request(p_url => URL, p_http_method => 'GET');
end;

ответил(а) 2018-10-15T10:16:00+03:00 2 года, 1 месяц назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема