Rest ORDS 18.4为什么我得到一个空的:正文(CLOB)?

Rest ORDS 18.4为什么我得到一个空的:正文(CLOB)?,rest,oracle-apex,Rest,Oracle Apex,请告诉我,为什么空值会出现? 要发送请求,我使用SOAPUI5.5 但是:body不是空的 我需要在ORD的设置中做些什么吗 DECLARE --b_body BLOB := :body; c_body CLOB := :body_text; BEGIN if :body_text is null then htp.print('EMPTY'); end if; END; 如果我记得正确的话,在一个代码块中使用两个绑定不是一个好主意。。。 如果ORD检

请告诉我,为什么空值会出现? 要发送请求,我使用SOAPUI5.5

但是:body不是空的

我需要在ORD的设置中做些什么吗

DECLARE
    --b_body BLOB := :body;
    c_body CLOB := :body_text;
BEGIN
    if :body_text is null then
    htp.print('EMPTY');
    end if; 
END;

如果我记得正确的话,在一个代码块中使用两个绑定不是一个好主意。。。 如果ORD检查您正在使用:body,:body_文本没有填充,我认为这是因为将blob转换为clob的总体性能


所以只要使用:body_text,你就可以了

此症状可能是通过APEX SQL Workshop界面的旧版本创建RESTful服务造成的。APEX 5.1当然表现出这种行为,可能还有其他行为。如果无法升级APEX,请使用SQL Developer创建ORDS模块。

正如文档中所述,对于每个隐式参数:body和:body\u text,如果多次取消引用,则第二次和后续取消引用将显示为空

因此,按如下方式更改代码:

DECLARE
    --b_body BLOB := :body;
    c_body CLOB := :body_text;
BEGIN
    if c_body is null then
    htp.print('EMPTY');
    end if; 
END;