如何在Rails中获取以前的URL?不是您从中获得请求的网址,而是之前的网址?Ruby on Rails:你如何获得以前的URL?
因为我得到一个AJAX请求,并且我需要它们当前所在页面的URL(或者AJAX之前的URL)。
如何在Rails中获取以前的URL?不是您从中获得请求的网址,而是之前的网址?Ruby on Rails:你如何获得以前的URL?
因为我得到一个AJAX请求,并且我需要它们当前所在页面的URL(或者AJAX之前的URL)。
尝试使用HTTP_REFERER
。
在Rails:request.referrer
或request.headers["HTTP_REFERER"]
http://railscasts.com/episodes/246-ajax-history-state - >伟大的阿贾克斯
http://ethilien.net/archives/better-redirects-in-rails/ - >你可以把在会议上尽可能多以前的网址,只要你想。
在Web应用程序中,不存在以前的URL。 http协议是无状态的,所以每个请求都是相互独立的。
您可以使用Javascript代码发送请求,并将当前网址与请求一起发送。
使用
<%= url_for(:back) %>
# if request.env["HTTP_REFERER"] is set to "http://www.example.com"
# => http://www.example.com
只是碰到这种问题来了,这涉及到简单的东西,我做什么现在。
我在使用ajax向导样式应用程序之前采用的一个简单解决方案是存储两个包含前一个和当前请求(包含所有参数)的会话变量。 我只是这两行添加到我的应用程序控制器
session[:previous_request_url] = session[:current_request_url]
session[:current_request_url] = request.url
这正是正确答案,我们都应该再读Roy Fielding的论文! – awenkhh 2015-03-12 08:21:22