restapi
-
개요 이전에 개발 동아리 홈페이지 제작 프로젝트 중에 깃허브를 활용하여 동아리 회원 인증을 하자는 의견으로 Github Oauth + RestAPI + JWT 구현 했던 내용을 정리한다. 굳이 Github OAuth를 사용해야 했던 이유 동아리의 모든 인원이 github가입이 필수 홈페이지에 github api와 연동해야 했음(깃허브 커밋시 활동 포인트 증가 기능) 소개 JWT의 동작의 장점은 따로 세션 서버를 구성하지 않고도 확장성이 뛰어나다는 점이다. 또한 토큰을 서버에서 관리하지 않고 클라이언트 쪽에서 관리하기 때문에 서버 쪽 부담이 적다. 기본적으로 스프링 시큐리티는 세션 기반으로 동작한다. 이를 JWT 기반 동작으로 변경해야 하는데, 시큐리티는 변화에 유연하기 때문에 기존 동작들을 사용자가 원하..
스프링 시큐리티 + Github Oauth + RESTAPI + JWT 활용(With Gradle)개요 이전에 개발 동아리 홈페이지 제작 프로젝트 중에 깃허브를 활용하여 동아리 회원 인증을 하자는 의견으로 Github Oauth + RestAPI + JWT 구현 했던 내용을 정리한다. 굳이 Github OAuth를 사용해야 했던 이유 동아리의 모든 인원이 github가입이 필수 홈페이지에 github api와 연동해야 했음(깃허브 커밋시 활동 포인트 증가 기능) 소개 JWT의 동작의 장점은 따로 세션 서버를 구성하지 않고도 확장성이 뛰어나다는 점이다. 또한 토큰을 서버에서 관리하지 않고 클라이언트 쪽에서 관리하기 때문에 서버 쪽 부담이 적다. 기본적으로 스프링 시큐리티는 세션 기반으로 동작한다. 이를 JWT 기반 동작으로 변경해야 하는데, 시큐리티는 변화에 유연하기 때문에 기존 동작들을 사용자가 원하..
2024.01.29 -
🥴Paging? 글 목록이나 유저 목록 등을 구현하다 보면 페이징이 필요한 경우가 있다. 페이지를 나눠 해당 페이지에 필요한 정보만 보내기도 하고, 정렬 기준이 필요한 경우도 있을 것이다. 스프링에서는 간편하게도 해당 기능을 구현한 Page, Pageable이 존재한다. 현재 프로젝트 구현 중에 페이지 처리를 해야 하는 부분이 생겨서 해당 기능을 간략하게 정리해 보려고 한다. 🛰️Controller 먼저 컨트롤러에서의 Paging처리이다. 보통 요청은 다음과 같이 Pageable의 page, size, sort 3가지의 파라미터로 요청받는다. /api/admin/users?page=3&size=1&sort=id,DESC → 3번째 페이지 / 페이지당 사이즈 1 / id기준 내림차순 정렬 @GetMappi..
스프링부트 페이징처리하기(JPA + RESTAPI)🥴Paging? 글 목록이나 유저 목록 등을 구현하다 보면 페이징이 필요한 경우가 있다. 페이지를 나눠 해당 페이지에 필요한 정보만 보내기도 하고, 정렬 기준이 필요한 경우도 있을 것이다. 스프링에서는 간편하게도 해당 기능을 구현한 Page, Pageable이 존재한다. 현재 프로젝트 구현 중에 페이지 처리를 해야 하는 부분이 생겨서 해당 기능을 간략하게 정리해 보려고 한다. 🛰️Controller 먼저 컨트롤러에서의 Paging처리이다. 보통 요청은 다음과 같이 Pageable의 page, size, sort 3가지의 파라미터로 요청받는다. /api/admin/users?page=3&size=1&sort=id,DESC → 3번째 페이지 / 페이지당 사이즈 1 / id기준 내림차순 정렬 @GetMappi..
2023.08.04