(gzipではなく)zip形式で圧縮されたXMLで応答するWebサービスを使用しています。Rubyが応答をgzip形式で自動的に解凍することは知っていますが、使用しているサービスにはgzip形式がありません。
サービスの応答を取得するために使用しているコードは次のとおりです。
require 'net/http'
require 'uri'
require 'nokogiri'
xml = Nokogiri::XML::Builder.new do |xml|
xml.method {
xml.param1 'value1'
xml.param2 'value2'
}
end
url = URI.parse('http://url.to.webservice/')
request = Net::HTTP::Post.new(url.path)
request.content_type = 'text/xml'
request.body = xml.to_xml
response = Net::HTTP.new(url.host, url.port).start { |http| http.request(request) }
case response
when Net::HTTPSuccess, Net::HTTPRedirection
# Decompress Zip response
else
puts "Request error."
end
Rubyを使用してZip応答を解凍する組み込みのメソッドはありますか?ありがとう!