Ruby 从URI::Generic对象获取路径和查询
我试图理解Ruby 从URI::Generic对象获取路径和查询,ruby,uri,Ruby,Uri,我试图理解URI::Generic对象。但是我找不到如何在API中将路径和查询提取为一个统一的字符串 如果我有这个对象: #<URI::Generic /api/trading/model/123456789?api_key=12345> 似乎我应该能够在上调用某个实例方法,但在URIapi上似乎找不到任何东西。有人能帮忙吗 用法: def get(path, params) uri = URI(path) if params.any? uri.query =
URI::Generic
对象。但是我找不到如何在API中将路径和查询提取为一个统一的字符串
如果我有这个对象:
#<URI::Generic /api/trading/model/123456789?api_key=12345>
似乎我应该能够在上调用某个实例方法,但在URI
api上似乎找不到任何东西。有人能帮忙吗
用法:
def get(path, params)
uri = URI(path)
if params.any?
uri.query = URI.encode_www_form(params)
end
# PASS SRTRING INTO REQUEST
request = Net::HTTP::Get.new(uri)
execute_request(request)
end
您正在寻找以下方法:
(irb)>uri
#
(irb)>uri.to_
“/api/trading/model/123456789?api_key=12345”
请记住,在ruby中,一切都是一个对象,您可以随时对一切调用
#methods
,以获得该对象的所有导出函数的列表。您正在寻找该方法:
(irb)>uri
#
(irb)>uri.to_
“/api/trading/model/123456789?api_key=12345”
请记住,在ruby中,一切都是一个对象,您可以随时对所有对象调用
#方法
,以获得该对象的所有导出函数的列表。表示可以启动调用,而无需将其转换为字符串。上面提到的代码有什么错误?表示调用可以在不将其转换为字符串的情况下启动。上面提到的代码有什么错误?
def get(path, params)
uri = URI(path)
if params.any?
uri.query = URI.encode_www_form(params)
end
# PASS SRTRING INTO REQUEST
request = Net::HTTP::Get.new(uri)
execute_request(request)
end
(irb)> uri
#<URI::Generic /api/trading/model/123456789?api_key=12345>
(irb)> uri.to_s
"/api/trading/model/123456789?api_key=12345"