Hi!
Is it possible to add opportunity that allows shiny app working as “native” app, i mean without iframe surroundings?
Hi!
Is it possible to add opportunity that allows shiny app working as “native” app, i mean without iframe surroundings?
There is an option to hide the navbar using hide-navbar: true
.
See https://www.shinyproxy.io/configuration/#general
This is typically used when Shiny apps are integrated within larger applications.
Hope this helps.
Best,
Tobias
Thank you, Tobias!
I know about this cool option. But problem is when i use shinyproxy, some js code doesn work (f.e. pseudofull screen on leaflet map in shiny app). And hide navbar doesn t solve this problem. Shiny proxy “paste” my app in iframe object. Is it possible to run shiny app without iframe around it?
Alexey
There are two issues that prevent the usage of the shiny app outside of an iframe:
I believe some modifications could allow usage of the app without iframe. Possibly via the addition of some RESTful calls to allocate/release apps.
Alternatively, there is an (experimental) workaround you could try:
Regards,
Frederick
If you’re interested, I found a solution based on @fmichielssen suggestions:
<div id="shinyframe" th:src="${container}"></div>
$("#shinyframe").attr("src", containerPath);
with window.location.replace(location.origin + containerPath);
tags$script('function heartbeat() {
setTimeout(function() {
$.ajax("/heartbeat/app/01_hello").success(function(data) {
heartbeat();
});
}, 10000);
};
heartbeat();')
That’s it!
@KZARCA @Alexey_Kuzmrnkov: a new heartbeat mechanism (that no longer requires the use of an iframe) has been implemented in ShinyProxy 2.0.0. Also, there is now an API that allows to programmatically manage proxies (no more iframe needed either); see https://www.shinyproxy.io/configuration/#proxy-api
Great! Can’t wait to test the new features!
Hi,
I couldn’t find the documentation about the new heartbeat mechanism. Where can I find it?
Best.
Hi @KZARCA, the documentation on heartbeat-rate
and heartbeat-timeout
at https://www.shinyproxy.io/configuration/#general is unchanged and still applicable.
The internal mechanism uses the standard websocket ping/pong mechanism now. See https://datatracker.ietf.org/doc/rfc6455 section 5.5.2 for more information.
Hope this helps!
Best,
Tobias