我的 rails 5 应用程序的问题在于我在页面上有一个链接,用户将用户发送到example.com/PlaceHolderRoute
。路径指向页面控制器中的操作。行动很简单:
send_file('public/files/downloadable.pdf', type: 'application/pdf', disposition: 'inline')
我知道disposition: 'inline'
将使浏览器呈现pdf,这就是我想要的,这就是它的作用。问题是当用户使用 browsers 后退按钮时。当浏览器返回到具有原始按钮的页面时,仍然在屏幕上呈现pdf&页面不可见。
我已尝试使用单独的视图为PDF操作<object>
标记,但遇到同样的问题。手动刷新后,该页面将变为可见。我也尝试使用<meta>
标签来防止任何缓存无效。我还注意到的一点是,当使用后退按钮时,浏览器中的URL确实会发生变化,服务器会按照惯例做出响应。我认为这是一个浏览器问题,但我发现不太可能在我尝试的每个浏览器上发生这种情况(Chrome,Firefox,Vivaldi等)。有人可以帮我吗?
修改
在Sinatra上没有观察到这种行为(仍然只使用相同的路线,html和&amp; send_file
)