如何获取 HTTP 响应错误消息?

How I can get HTTP response error message?

我使用 APEX_WEB_SERVICE.MAKE_REST_REQUEST 函数发出休息请求,当我收到不成功的响应状态代码(例如 400、405)时,我没有收到 body,但 Oracle Apex 调试消息数据显示:

HTTP response 405 - <message>

我怎样才能收到这条消息?我尝试使用 apex_web_service.g_headers 但它没有给我。

来自 Apex Debug 的照片,绿色边框在哪里 - 我的自定义错误,红色边框在哪里 - Apex。我认为这些数据来自 HTTP header 或类似的东西。

作为 MAKE_REST_REQUEST 我们的 函数 ,您应该在您已 MAKE_REST_REQUEST 分配给 ...[=11= 的变量中找到响应主体]

APEX 从不将响应主体写入调试输出;但你可以自己做,如下所示:

:
l_response := APEX_WEB_SERVICE.MAKE_REST_REQUEST( ... );
if apex_web_service.g_status_code >= 400 then
    apex_debug.info( 'Request Body is %s', sys.dbms_lob.substr( l_response, 4000, 1 ) );
end if;
:

APEX_WEB_SERVICE.G_REASON_PHRASE - 这就是我需要的。