我正试图通过HTTparty获取此网址:
http://collections.museumvictoria.com.au/api/search?hasimages=yes&collectingarea=royal+exhibition+building&page=1
我正在使用查询:
items = get("http://collections.museumvictoria.com.au/api/search", query: {has images: "yes", collecting area: "royal+exhibition+building", page: 1})
这会返回0结果但是如果我只是将url复制并传递到浏览器中,它会返回数据。从我的其他测试来看,似乎只收集带有加号的区域无法返回结果collectingarea: "arms"
。)
知道我们应该如何正确编码加号以使其在HTTParty中运行?
答案 0 :(得分:0)
使用HTTParty版本> = v0.13.4它在内部对查询值进行编码。 但是,您可以覆盖httparty的查询字符串规范化程序。 此外,您还需要在查询键中的单词之间添加下划线,如has_images,collecting_area。
我测试了这段代码,它对我有用:
require 'httparty'
class Test
include HTTParty
def self.test
puts self.get("http://collections.museumvictoria.com.au/api/search", query: {has_images: "yes", collecting_area: "royal+exhibition+building", page: 1})
end
end
Test.test