🐛 Urlencoding headers for file-downloads

This commit is contained in:
Mawoka
2022-12-10 12:39:32 +01:00
parent 907f54587b
commit 3be5cd5f66
2 changed files with 4 additions and 2 deletions
+2 -1
View File
@@ -13,6 +13,7 @@ from classquiz.auth import get_current_user
from classquiz.config import storage, settings
from classquiz.db.models import Quiz, User
import gzip
import urllib.parse
router = APIRouter()
settings = settings()
@@ -59,7 +60,7 @@ async def export_quiz(quiz_id: uuid.UUID, user: User = Depends(get_current_user)
stream_response(),
media_type="application/octet-stream",
headers={
"Content-Disposition": f"attachment;filename={quiz.title.encode('ascii', errors='ignore').decode()}.cqa"
"Content-Disposition": f"attachment;filename={urllib.parse.quote(quiz.title)}.cqa"
# noqa: E501
},
)
+2 -1
View File
@@ -21,6 +21,7 @@ from classquiz.config import redis, settings, storage, meilisearch
from classquiz.db.models import Quiz, QuizInput, User, PlayGame
from classquiz.kahoot_importer.import_quiz import import_quiz
import html
import urllib.parse
settings = settings()
@@ -270,6 +271,6 @@ async def export_quiz_answers(export_token: str, game_pin: str):
iter_file(),
media_type="application/vnd.ms-excel",
headers={
"Content-Disposition": f"attachment;filename=ClassQuiz-{quiz.title.encode('ascii', errors='ignore').decode()}-{datetime.now().strftime('%m-%d-%Y')}.xlsx" # noqa: E501
"Content-Disposition": f"attachment;filename=ClassQuiz-{urllib.parse.quote(quiz.title)}-{datetime.now().strftime('%m-%d-%Y')}.xlsx" # noqa: E501
},
)