我正在制作一个与 Jasper 报表服务器通信的小脚本,但现在我需要用 Python 阅读它。
这是我的 Ruby 脚本的一个片段:
def get_uuid_and_cookie
body = ""
cookie = ""
puts "FULL URL: #{"#{REPORT_PATH}/reports/#{REPORT_GROUP}/#{REPORT_NAME}"}"
uri = URI.parse("#{REPORT_PATH}/reports/#{REPORT_GROUP}/#{REPORT_NAME}")
http = Net::HTTP.new(uri_put.host, uri_put.port)
http.start do |http|
req = Net::HTTP::Put.new(uri_put.path + "?RUN_OUTPUT_FORMAT=#{FORMAT}")
puts "ACESSANDO: #{uri_put.path}?RUN_OUTPUT_FORMAT=#{FORMAT}"
req.basic_auth(SERVER_USER, SERVER_PASSWORD)
req.body = build_xml_request
resp = http.request(req)
body = resp.body
puts "COOKIE RECEBIDO: #{resp['Set-Cookie']}"
cookie = resp['Set-Cookie']
end
这是我的 Python 脚本的一个片段
def get_uuid_and_cookie():
handle = None
req = urllib2.Request(REPORT_URI+"reports/"+REPORT_GROUP+"/"+REPORT_NAME+"/")
base64string = base64.encodestring('%s:%s' % (SERVER_USER, SERVER_PASSWORD))[:-1]
authheader = "Basic %s" % base64string
req.add_header("Authorization", authheader)
req.get_method = lambda: 'PUT'
req.data = build_xml_request()
try:
handle = urllib2.urlopen(req)
except IOError, e:
print "ERROR: "+str(e)
在 Ruby 脚本中,a 可以获得这样的 COOKIE:
cookie = resp['Set-Cookie']
我怎样才能在 Python 中做到这一点?