我正在尝试使用APEX_WEB_SERVICE.MAKE_REST_REQUESTOracle 12c/Apex 5.1通过 SSL/TLS 访问休息网络服务。这会导致错误消息ORA-29248: an unrecognized WRL was used to open a wallet。我已将必要的证书放入 oracle 钱包中,并将其存储在代码中指定的位置。oracle 用户可以访问它。完整代码和错误信息如下。
DECLARE
l_clob CLOB;
l_param_names apex_application_global.vc_arr2;
l_param_values apex_application_global.vc_arr2;
BEGIN
apex_web_service.g_request_headers(1).name := 'Content-Type';
apex_web_service.g_request_headers(1).VALUE := 'application/x-www-form-urlencoded';
apex_web_service.g_request_headers(2).name := 'apikey';
apex_web_service.g_request_headers(2).VALUE := 'this_is_the_api_key';
l_param_names(1) := 'fist_param_name';
l_param_values(1) := 'first_param_value';
l_param_names(2) := 'second_param_name';
l_param_values(2) := 'second_param_value';
-- Get the XML response from the web service.
l_clob :=
APEX_WEB_SERVICE.make_rest_request(
p_url => 'https://example.com/rest/webservice',
p_http_method => 'POST',
p_parm_name => l_param_names,
p_parm_value => l_param_names,
p_wallet_path => '/path/to/wallet/dir', …Run Code Online (Sandbox Code Playgroud)