我的客户应该调用的服务的示例 URL 如下所示:
http://www.example.com/providers/?query=eric&group_ids[]=1F23&group_ids[]=423&start=3&limit=20
已经写好的帮助模块/方法是这样的,我应该为我自己的客户使用:
def create_http_request(method, path, options = {})
# create/configure http
http = Net::HTTP.new(@base_uri.host, @base_uri.port)
http.open_timeout = options[:open_timeout] || @open_timeout
http.read_timeout = options[:read_timeout] || @read_timeout
# create/configure request
if method == :get
request = Net::HTTP::Get.new(path)
else
raise ArgumentError, "Error: invalid http method: #{method}"
end
return http, request
end
在其他人编写的类似代码的其他部分中,我看到如下内容: 为了调用该 create_http_request 方法:
def person_search(query, options = {})
params = {
query: query,
group_ids: options[:group_ids],
start: options[:page] || @default_page,
limit: options[:page_size] || @default_page_size
}
pathSemantic = "/patients/?#{ params.to_param }"
httpSemantic, requestSemantic = create_http_request(:get, pathSemantic, options)
所以主要是我不明白她在用 params 做什么,为什么我们需要这样做?这是最好的方法吗?