LoginSignup
0
0

More than 5 years have passed since last update.

ShinyアプリでURLのsearch文字列を変数入力として扱う

Posted at

Shinyアプリの動作を指定する変数をURLのsearch文字列を使って引き渡す方法について解説する。

ユースケース

認証機能の無い Shiny Server Open Source でアプリを公開するときに、ユーザ毎にトークンを入力して、ユーザ毎の動作をするようにアプリを作ったが、ユーザから毎回トークンを入力するのが面倒と言われた。その解決方法として、トークン込みのアプリURLをブックマークすればいいのではと思いついた。

URLに値を埋め込む

ここで、ShinyアプリのURLがhttp://localhost:3774/myapp とすると、トークンXXXXXを次のように仕込むことができる。
http://localhost:3774/myapp?token=XXXXX

URLの?token=XXXXXの部分は session$clientData$url_search で参照

server <- function(input, output, session){
  token <- reactive({
    url_search =  session$clientData$url_search
    if (url_search != "") {
      sub("\\?token=", "", url_search)
    }
  })
}

これで、token()で値を参照できる。

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0