Ruby on Rails 如何获取当前 URL?
Posted
技术标签:
【中文标题】Ruby on Rails 如何获取当前 URL?【英文标题】:Ruby on Rails how to get current URL? 【发布时间】:2014-02-21 04:49:38 【问题描述】:我正在尝试使用request.host
、request.url
在 rails 中获取当前网址,但我有一个位于 2 个域中的网站,所以:
当我在 www.example1.com
时,request.host
或 .url 显示 www.example1.com
当我在 www.example2.com
request.host
或 .url 显示 example1.com
因为 example2 正在从 example1 获取所有内容并显示在 example2(已解析)
因为 request.host 得到了真正的主机,而 request.url 也得到了主机 我真的需要在浏览器中获取网址而不是主机,有人可以帮忙吗?
OB:我正在使用 rails 4 和 ruby 2 OBs2:request.domain 不起作用,这仅返回“.com”的 url
【问题讨论】:
你试过request.original_url
吗?
@Lain 感谢您在很多问题中将“i”大写的努力,但请尝试大量修改。很多时候,其他事情也需要修复。
How do I get the current absolute URL in Ruby on Rails?的可能重复
blog.grepruby.com/2015/04/absolute-url-full-url-in-rails-4.html
【参考方案1】:
对于 Rails 4,您应该使用 request.original_url 来获取当前 URL。更多detail.
【讨论】:
【参考方案2】:request.original_url
将在 Rails 4 中为您提供当前网址。
您可以访问此资源以获取更多信息@How do I get the current absolute URL in Ruby on Rails?
【讨论】:
这个方法对我不起作用,我认为这需要跨域 放置您的请求对象并查看哪个对象属性提供 example2.com 作为值,您可能会对解决方案有所了解。以上是关于Ruby on Rails 如何获取当前 URL?的主要内容,如果未能解决你的问题,请参考以下文章
Ruby on Rails 5 Action Cable:当前模型实例的流(基于 URL 的订阅)
如何在 Ruby on Rails 应用程序中处理 RESTful URL 参数?