Last active
October 8, 2019 23:03
-
-
Save krisrice/a442244eadfcc927b79978a62d37af31 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
REM Add to ORDS config | |
REM <entry key="procedure.rest.preHook">klrice.my_ords_ctx.populate</entry> | |
REM Create a context | |
CREATE OR REPLACE CONTEXT ords_params USING my_ords_ctx; | |
REM PKG to populate the context | |
CREATE OR REPLACE PACKAGE my_ords_ctx AS | |
function populate return boolean; | |
END my_ords_ctx; | |
/ | |
SHOW ERRORS | |
create or replace PACKAGE BODY my_ords_ctx IS | |
procedure setparam(p_name in varchar2) as | |
begin | |
-- place into context | |
DBMS_SESSION.set_context('ords_params', p_name, OWA_UTIL.get_cgi_env(p_name)); | |
end setparam; | |
function populate return boolean as | |
BEGIN | |
-- add everything | |
setparam('user-agent'); | |
setparam('host'); | |
setparam('accept'); | |
setparam('APEX_LISTENER_VERSION'); | |
setparam('DAD_NAME'); | |
setparam('DOC_ACCESS_PATH'); | |
setparam('DOCUMENT_TABLE'); | |
setparam('GATEWAY_IVERSION'); | |
setparam('GATEWAY_INTERFACE'); | |
setparam('HTTP_ACCEPT'); | |
setparam('HTTP_ACCEPT_ENCODING'); | |
setparam('HTTP_ACCEPT_LANGUAGE'); | |
setparam('HTTP_ACCEPT_CHARSET'); | |
setparam('HTTP_IF_MODIFIED_SINCE'); | |
setparam('HTTP_IF_NONE_MATCH'); | |
setparam('HTTP_HOST'); | |
setparam('HTTP_ORACLE_ECID'); | |
setparam('HTTP_PORT'); | |
setparam('HTTP_REFERER'); | |
setparam('HTTP_USER_AGENT'); | |
setparam('PATH_ALIAS'); | |
setparam('PATH_INFO'); | |
setparam('PLSQL_GATEWAY'); | |
setparam('QUERY_STRING'); | |
setparam('REMOTE_ADDR'); | |
setparam('REMOTE_USER'); | |
setparam('REQUEST_CHARSET'); | |
setparam('REQUEST_IANA_CHARSET'); | |
setparam('REQUEST_METHOD'); | |
setparam('REQUEST_PROTOCOL'); | |
setparam('REQUEST_SCHEME'); | |
setparam('SCRIPT_NAME'); | |
setparam('SCRIPT_PREFIX'); | |
setparam('SERVER_NAME'); | |
setparam('SERVER_PORT'); | |
setparam('SERVER_PROTOCOL'); | |
setparam('SERVER_SOFTWARE'); | |
setparam('WEB_AUTHENT_PREFIX'); | |
setparam('HTTP_COOKIE'); | |
return true; | |
END populate; | |
END my_ords_ctx; | |
/ | |
SHOW ERRORS | |
grant execute on my_ords_ctx to public | |
/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment