Пример #1
0
    def test_get_range(self):
        get_range = RangeOperations.get_range_spec([(100,200)])
        self.assertEqual(get_range, "bytes=100-200",
                         "Incorrect byte range spec \'%s\' returned from get_range_spec" % get_range)

        get_range = RangeOperations.get_range_spec([(100,200),(201,400)])
        self.assertEqual(get_range, "bytes=100-200,201-400",
                         "Incorrect byte range spec \'%s\' returned from get_range_spec" % get_range)
Пример #2
0
    def send_request_to_origin(self, request):
        path = request.path
        remote_ip = request.remote_ip
        logging.info("Get resource %s" % path)
        #try:

        out_req = tornado.httpclient.HTTPRequest(path, method="GET")
        for item, value in request.headers.iteritems():
            out_req.headers[item] = value

        # If there are items in range list, copy them into headers field.
        # This takes care of sending range requests sent by client as query param
        if  self.range_list:
            out_req.headers.add("Range", RangeOperations.get_range_spec(self.range_list))

        out_req.request_timeout = self.request_timeout
        response = yield self.http_client.fetch(out_req, raise_error=False)
        raise tornado.gen.Return(response)
Пример #3
0
    def send_request_to_origin(self, request):
        path = request.path
        remote_ip = request.remote_ip
        logging.info("Get resource %s" % path)
        #try:

        out_req = tornado.httpclient.HTTPRequest(path, method="GET")
        for item, value in request.headers.iteritems():
            out_req.headers[item] = value

        # If there are items in range list, copy them into headers field.
        # This takes care of sending range requests sent by client as query param
        if self.range_list:
            out_req.headers.add(
                "Range", RangeOperations.get_range_spec(self.range_list))

        out_req.request_timeout = self.request_timeout
        response = yield self.http_client.fetch(out_req, raise_error=False)
        raise tornado.gen.Return(response)