如何在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