【发布时间】:2013-08-20 15:17:45
【问题描述】:
我最近在我的 API 项目中实施了版本控制。现在我的 api 的 URL 必须以序列 /v1/ 为前缀(因为我目前在 v1 上)
我不想破坏旧的调用,所以为了确保透明的兼容性,我想重写旧的 url。
/events/9999/attendees 之类的网址应重定向到 /v1/events/9999/attendees
我使用我的 rails routes 配置文件 routes.rb 使用以下代码进行了设置:
match "*path", :to => redirect("/#{API_CONFIG['current_version']}/%{path}"),
:constraints => lambda { |request| true }
我现在面临的问题是,最终重写的路线似乎是 url 编码的......(或其他东西)实际上,这就是%{path}似乎是坏了。然后:
/events/9999/attendees 被重定向到/v1/events%2F9999%2Fattendees
我做错了什么?
非常感谢
【问题讨论】:
-
url_encode(path)怎么样
标签: ruby-on-rails ruby ruby-on-rails-3.2