def deserialize_prepared_request(serialized): p = PreparedRequest() p.body = serialized['body'] p.headers = CaseInsensitiveDict(serialized['headers']) p.method = serialized['method'] p.url = serialized['uri'] return p
def copy_request(request): """Copy a Requests PreparedRequest.""" new_request = PreparedRequest() new_request.method = request.method new_request.url = request.url new_request.body = request.body new_request.hooks = request.hooks new_request.headers = request.headers.copy() return new_request
def deserialize_prepared_request(serialized): p = PreparedRequest() p._cookies = RequestsCookieJar() body = serialized['body'] if isinstance(body, dict): original_body = body.get('string') p.body = original_body or base64.b64decode( body.get('base64_string', '').encode()) else: p.body = body h = [(k, from_list(v)) for k, v in serialized['headers'].items()] p.headers = CaseInsensitiveDict(h) p.method = serialized['method'] p.url = serialized['uri'] return p
import tornado import tornado.httpclient as httpclient asyncHTTPClient = httpclient.AsyncHTTPClient() c = 0 file = 'test.jpg' files = [ ('image', ('%d' % c, open(file, 'rb'), 'image/jpg')), ] data = { 'filename': 'test', } def on_response(response): pass if __name__ == "__main__": IP = '106.14.70.249' url = 'http://%s:9331/api/image_save' % IP prepared_request = PreparedRequest() prepared_request.method = 'post' prepared_request.headers = {} prepared_request.prepare_body(data, files) request = tornado.httpclient.HTTPRequest(url=url, headers=prepared_request.headers, method='POST', body=prepared_request.body) asyncHTTPClient.fetch(request, on_response) tornado.ioloop.IOLoop.instance().start() # start the tornado ioloop to