last modified support for source images
This commit is contained in:
parent
19cd24f389
commit
783a521682
1 changed files with 8 additions and 1 deletions
|
@ -1,7 +1,10 @@
|
|||
import mimetypes
|
||||
import os
|
||||
from collections import namedtuple
|
||||
from datetime import datetime
|
||||
from functools import wraps
|
||||
|
||||
import pytz
|
||||
from django.core.cache import cache
|
||||
from django.db.models import Prefetch
|
||||
from django.http import HttpResponse
|
||||
|
@ -378,7 +381,11 @@ class SourceViewSet(MapdataViewSet):
|
|||
|
||||
def _image(self, request, pk=None):
|
||||
source = self.get_object()
|
||||
return HttpResponse(open(source.filepath, 'rb'), content_type=mimetypes.guess_type(source.name)[0])
|
||||
last_modified = datetime.utcfromtimestamp(os.path.getmtime(source.filepath)).replace(tzinfo=pytz.utc)
|
||||
response = get_conditional_response(request, last_modified=last_modified)
|
||||
if response is None:
|
||||
response = HttpResponse(open(source.filepath, 'rb'), content_type=mimetypes.guess_type(source.name)[0])
|
||||
return response
|
||||
|
||||
|
||||
class AccessRestrictionViewSet(MapdataViewSet):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue