Example #1
0
def serve(request, signature, image_id, filter_spec):
    image = get_object_or_404(get_image_model(), id=image_id)

    if not verify_signature(signature.encode(), image_id, filter_spec):
        raise PermissionDenied

    try:
        rendition = image.get_rendition(filter_spec)
        rendition.file.open('rb')
        return HttpResponse(FileWrapper(rendition.file), content_type='image/jpeg')
    except InvalidFilterSpecError:
        return HttpResponse("Invalid filter spec: " + filter_spec, content_type='text/plain', status=400)
Example #2
0
def serve(request, signature, image_id, filter_spec):
    image = get_object_or_404(get_image_model(), id=image_id)

    if not verify_signature(signature.encode(), image_id, filter_spec):
        raise PermissionDenied

    try:
        rendition = image.get_rendition(filter_spec)
        rendition.file.open('rb')
        return HttpResponse(FileWrapper(rendition.file),
                            content_type='image/jpeg')
    except InvalidFilterSpecError:
        return HttpResponse("Invalid filter spec: " + filter_spec,
                            content_type='text/plain',
                            status=400)
Example #3
0
 def test_signature_changes_on_filter_spec(self):
     self.assertFalse(verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 100, 'fill-800x700'))
Example #4
0
 def test_signature_changes_on_image_id(self):
     self.assertFalse(verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 200, 'fill-800x600'))
Example #5
0
 def test_signature_verification(self):
     self.assertTrue(verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 100, 'fill-800x600'))
Example #6
0
 def test_signature_verification(self):
     self.assertTrue(verify_signature(b"xnZOzQyUg6pkfciqcfRJRosOrGg=", 100, "fill-800x600"))
Example #7
0
 def test_signature_changes_on_filter_spec(self):
     self.assertFalse(
         verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 100,
                          'fill-800x700'))
Example #8
0
 def test_signature_changes_on_image_id(self):
     self.assertFalse(
         verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 200,
                          'fill-800x600'))
Example #9
0
 def test_signature_verification(self):
     self.assertTrue(
         verify_signature(b'xnZOzQyUg6pkfciqcfRJRosOrGg=', 100,
                          'fill-800x600'))