oracle PL\SQL - OWA_UTIL.REDIRECT_URL在新选项卡中打开

eeq64g8w  于 2023-04-05  发布在  Oracle
关注(0)|答案(2)|浏览(87)

在PL\SQL中,是否可以在新的选项卡/窗口中打开URL,而不是现有的选项卡/窗口?
我知道有OWA_UTIL.REDIRECT_URL函数,但这会使当前页面重定向到指定的URL。我想在新的选项卡或窗口中打开该URL。
例如:

OWA_UTIL.REDIRECT_URL('https://google.com')

当我想保持当前选项卡打开并打开新选项卡/窗口到google.com时,我会将当前浏览器选项卡重定向到google.com

brqmpdu1

brqmpdu11#

我认为这是不可能的。OWA_UTIL.REDIRECT_URL就像.htaccess文件中的重定向。在那里你也不能指定“在新标签页中打开”。你需要在页面中部署一些JavaScript。
类似的解决方案可能会起作用:

HTP.PRINT ('<html><head>');
HTP.PRINT ('<script type="text/javascript">');
HTP.PRINT ('window.onload = function () {');
HTP.PRINT ('  var url = "https://google.com";');    
HTP.PRINT ('  var win = window.open(url, '_blank');');
HTP.PRINT ('  win.focus();');
HTP.PRINT ('}');
HTP.PRINT ('</script>');
HTP.PRINT ('</head><body></body></html>');
prdp8dxp

prdp8dxp2#

您可以使用OWA_UTIL.REDIRECT_URL进行重定向,并将variable:status赋值给OUT头中的X-ORDS-STATUS-CODE
就像这样:
redirect with X-ORDS-STATUS-CODE

DECLARE
    l_url varchar2(2000);
BEGIN
    l_url := 'https://google.com/';
    owa_util.redirect_url(
        curl            => l_url,
        bclose_header   => TRUE
     );
    :status := 303;
END;

相关问题