此代码有什么问题?
require 'xmlrpc/client'
def find_product(key, upc)
server = XMLRPC::Client.new2('http://www.upcdatabase.com/xmlrpc')
begin
response = server.call('lookup',[{'rpc_key' => key}, {'upc' =>upc}] )
rescue XMLRPC::FaultException => e
puts "Error: "
puts e.faultCode
puts e.faultString
end
end
dev_key = '40bf22cb32833a2af48fd65121128fc28e42d580'
upc_code = '099482409463'
puts find_product(dev_key, upc_code)
{"status"=>"fail", "message"=>"Invalid parameters"}
我无法找到哪个参数无效,因为http://www.upcdatabase.com/上有关其API的信息不多。
任何人都可以帮助我吗?我使用的是Ruby 1.9.2
答案 0 :(得分:2)
这太有趣了,我只是在敲打同样的事情。这段代码适合我:
require 'xmlrpc/client'
server = XMLRPC::Client.new("www.upcdatabase.com", "/xmlrpc")
result = server.call("lookup", 'rpc_key' => "mykey", 'upc' => "071160055506")
编辑:我还发现http://www.upcdatabase.org/api.php实际上有一个json api,我也会试一试,如果你愿意,可以回复。