我有以下要在PL / SQL中进行的cURL请求:
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');
请问有什么可以帮助的吗?
谢谢 干杯,
答案 0 :(得分:1)
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;