0

我有一个如下所示的 Java REST API:

GET /dashboard/group/{group}/class/{class}/view/{view_by}/utilizations

我想在 Rails 和 Controller 中为它编写一个客户端来访问其参数的值等例如在/dashboard/group/group_elite/class/middle_class/view/all/utilizations

参数值group, class and viewgroup_elite, middle_class and all

我的问题是如何访问这些参数及其值?

4

1 回答 1

2

好吧,假设您在控制器中做您的事情来构造要查询的 URL,然后您可以使用它来“解析并获取参数”:

url = '/dashboard/group/{group}/class/{class}/view/{view_by}/utilizations'
ar = url.split('/')
params_to_check = [ :group, :class, :view ]
params_h = {}
params_to_check.each do |param|
  value_index = ar.index(param.to_s) + 1
  params_h[param] = ar[value_index] if ar[value_index].present?
end

这里实际上不需要 Regexp。(您可以在控制台中进行复制粘贴并运行puts params_h,它应该会输出您想要的内容(希望如此!)

可以看到,这段代码暗示参数跟在属性名: 后面/group/{value},不像/group/smthing/{group}

于 2013-06-26T17:53:21.813 回答