Преглед изворни кода

never serve pasted files in browser

Pi пре 1 година
родитељ
комит
ab9839c379
3 измењених фајлова са 4 додато и 1 уклоњено
  1. 1 0
      .dockerignore
  2. 1 1
      rest/pyapi.py
  3. 2 0
      rest/validate.py

+ 1 - 0
.dockerignore

@@ -4,4 +4,5 @@ prayer-generator
 !prayer-generator/xml
 !prayer-generator/license
 grocery-transactions
+files/
 

+ 1 - 1
rest/pyapi.py

@@ -106,7 +106,7 @@ def get_clip(filename):
     if isinstance(ret, HTTPError):
         return ret
 
-    return static_file(path, root='rest/static/files')
+    return static_file(path, root='rest/static/files', download=True)
 
 
 @route('/upload', method=['GET', 'POST'])

+ 2 - 0
rest/validate.py

@@ -47,6 +47,8 @@ def validate(filename: str, tool: str, root='rest/static/files') -> bytes:
     ret = static_file('/'.join([filename,]*2) + '.file', root=root)
     if isinstance(ret, HTTPError):
         return abort(404, f"No such `{tool.title()}`: {filename}")
+    if ret.status_code == 304:
+        return ret
 
     if ret.content_length > CLIP_SIZE_LIMIT:
         return abort(418, f"{tool.title()} size exceeds {CLIP_SIZE_LIMIT}")