在 Shiny 中获取响应头变量

2024-02-19

我的 apache 将 LDAP 登录传递给变量X-远程用户在标题中:

但我不知道如何在 Shiny 应用程序中获取它。有任何想法吗?也许解决方案可以是一些java脚本?


好吧,我解决了。首先包含在ui.Rjs函数:

www/js/getLogin.js:

function requestLogin() {
var client = new XMLHttpRequest();
client.open("GET", "yourshinyhostname", true);
client.send();
client.onreadystatechange = function() {
    
var resposne = client.getResponseHeader("X-Remote-User");
Shiny.onInputChange("getLogin", resposne);
}; }

然后你可以得到X-远程用户例如通过单击按钮获取值:

ui.R:

includeScript("www/js/getLogin.js"),
uiOutput("login_btn"),
verbatimTextOutput("text")

server.R :

output$login_btn <- renderUI({
  
  HREF <- sprintf('
                  <button id="get_login_btn" value="test" onclick="requestLogin();" >
                  <font color="black">
                  <i class="fa fa-user"></i> Get login
                  </font> 
                  </button>
                  ')
HTML(HREF)
}) 

jsOutput <- reactive({
  input$getLogin
})

output$text <- renderPrint({ 
  jsOutput()
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Shiny 中获取响应头变量 的相关文章

随机推荐