我正在使用 Oracle 常规数据库(不像 NoSQL 之类的)和 Oracle Rest 数据服务。我需要知道如何使用 pl/sql 获取 HTTP 消息正文。举个例子,
通过oracle Rest数据服务将json对象发送到oracle applicationexpress,在applicationexpress内部暴露消息体并获取json结构化的内容并一一取出字段。
最佳答案
我删除了之前的帖子。您可以将正文作为 BLOB 获取并转换为要使用的字符,但至少在 apex.oracle.com 上的 Application Express 托管实例的 4.2 版本中,我让它可以与自动 JSON 值绑定(bind)一起使用。
Begin
htp.p('JSON ename = ' || :ename);
htp.p('JSON dept = ' || :dept);
insert into emp(ename, deptno)
values (:ename, :dept);
htp.p('Rows Inserted = ' || sql%rowcount);
end;
您可以通过发布如下内容来测试它:
{“ename”:“Seema”,“部门”:10}
演示地址:https://apex.oracle.com/pls/apex/gjarmiolowski/hr/employees/
确保 Content-Type header 设置为 application/json
更新:这是一个有效的 Windows curl 命令 curl --header "内容类型:application/json"--request POST --data-ascii "{\"ename\":\"hello\",\"dept\":\"10\"}"https://apex.oracle.com/pls/apex/gjarmiolowski/hr/employees/
关于oracle - 如何使用 Oracle Rest 数据服务发布 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28273456/