Oracle ORDS 3.0.4 POST PL/SQL 过程 400 错误请求
Oracle ORDS 3.0.4 POST PL/SQL Procedure 400 Bad Request
Oracle 12c 12.1.0.2,SQL开发人员 4.1.3.20
按照在线教程安装了 ORDS(无 APEX)并且自动启用功能工作正常,包括 POST 到已启用的 (emp) table,所以环境看起来不错。但是当我尝试在 POST 中定义 PL/SQL 服务时,我似乎无处可去。这是服务定义:
-- ORDS has been started in Standalone mode in SQL developer here
CREATE OR REPLACE PROCEDURE test_proc IS
BEGIN
INSERT INTO emp (empno, ename) VALUES (10, 'TEST');
END test_proc;
/
BEGIN
ORDS.DEFINE_SERVICE(
p_module_name => 'test' ,
p_base_path => 'test/',
p_pattern => 'simple_insert/',
p_method => 'POST',
p_source_type => ords.source_type_plsql,
p_source => 'BEGIN
hr.test_proc;
END;');
COMMIT;
END;
/
-- At this point the service is defined and running, testing with Postman yields "400 Bad Request"
GRANT EXECUTE ON hr.test_proc TO APEX_PUBLIC_USER; -- Despite being decoupled from APEX this username still remains in ORDS 3.0.4, appears in .\ords\conf\apex.xml
-- Same error as before, having the priv makes no difference
邮递员中的错误消息:
400 Bad Request
mapped request using: /hr/* to: ORDS:apex_pu.HR
BadRequestException [statusCode=400, reasons=[Expected one of: <<{,[>> but got: <>]]
我不是这方面的专家,但我刚遇到这个问题。我的解决方案是在请求正文中传递一些内容(即使您的例程没有使用它)。
即使这样也有效:
{}
如果您尝试使用 GET
方法,则不需要传递任何内容,但 POST
需要它。 (我假设你需要使用 POST
- 和我一样)。
祝你好运
Oracle 12c 12.1.0.2,SQL开发人员 4.1.3.20
按照在线教程安装了 ORDS(无 APEX)并且自动启用功能工作正常,包括 POST 到已启用的 (emp) table,所以环境看起来不错。但是当我尝试在 POST 中定义 PL/SQL 服务时,我似乎无处可去。这是服务定义:
-- ORDS has been started in Standalone mode in SQL developer here
CREATE OR REPLACE PROCEDURE test_proc IS
BEGIN
INSERT INTO emp (empno, ename) VALUES (10, 'TEST');
END test_proc;
/
BEGIN
ORDS.DEFINE_SERVICE(
p_module_name => 'test' ,
p_base_path => 'test/',
p_pattern => 'simple_insert/',
p_method => 'POST',
p_source_type => ords.source_type_plsql,
p_source => 'BEGIN
hr.test_proc;
END;');
COMMIT;
END;
/
-- At this point the service is defined and running, testing with Postman yields "400 Bad Request"
GRANT EXECUTE ON hr.test_proc TO APEX_PUBLIC_USER; -- Despite being decoupled from APEX this username still remains in ORDS 3.0.4, appears in .\ords\conf\apex.xml
-- Same error as before, having the priv makes no difference
邮递员中的错误消息:
400 Bad Request mapped request using: /hr/* to: ORDS:apex_pu.HR BadRequestException [statusCode=400, reasons=[Expected one of: <<{,[>> but got: <>]]
我不是这方面的专家,但我刚遇到这个问题。我的解决方案是在请求正文中传递一些内容(即使您的例程没有使用它)。
即使这样也有效:
{}
如果您尝试使用 GET
方法,则不需要传递任何内容,但 POST
需要它。 (我假设你需要使用 POST
- 和我一样)。
祝你好运