diff --git a/front-end/src/pages/professor/home/layout/ProfessorHomeLayout.tsx b/front-end/src/pages/professor/home/layout/ProfessorHomeLayout.tsx index a1358f3..68083ee 100644 --- a/front-end/src/pages/professor/home/layout/ProfessorHomeLayout.tsx +++ b/front-end/src/pages/professor/home/layout/ProfessorHomeLayout.tsx @@ -56,7 +56,7 @@ const ProfessorHomeLayout = () => { if (search.trim() === keyword) { return; } - navigate(`/professor/search/?keyword=${search}`); + navigate(`/professor/search/?keyword=${encodeURIComponent(search)}`); } } else if (event.key === 'Escape') { event.currentTarget.blur(); diff --git a/front-end/src/repository/courseRepository.ts b/front-end/src/repository/courseRepository.ts index 622f838..77f8f1e 100644 --- a/front-end/src/repository/courseRepository.ts +++ b/front-end/src/repository/courseRepository.ts @@ -208,10 +208,13 @@ class CourseRepository { async searchCourses(keyword: string): Promise { // API: GET /professors/courses?keyword={keyword} - const response = await fetch(`/api/professors/courses?keyword=${keyword}`, { - method: 'GET', - credentials: 'include', - }); + const response = await fetch( + `/api/professors/courses?keyword=${encodeURIComponent(keyword)}`, + { + method: 'GET', + credentials: 'include', + } + ); await throwError(response);