본문 바로가기

Project22

[Spring Boot] 테스트 코드에서 프로퍼티 NullPointerException 오류 해결 @Service public class TokenService { @Value("${secret}") private String secretKey; public String generateJWT(MemberInfoDto info) { // ... Jwts.builder() .setHeader(headers) .setClaims(payloads) .setIssuedAt(new Date(System.currentTimeMillis())) .setExpiration(new Date(System.currentTimeMillis() + 60 * 1000 * 60)) .signWith(SignatureAlgorithm.HS256, secretKey.getBytes()) .compact(); } //... } 토큰 .. 2023. 4. 6.
[Spring Boot] 개인 정보가 담긴 Jwt 토큰 발급 후 Cookie로 반환하기 oAuthService에 Jwt 토큰을 발급하는 메서드를 추가했다. public String generateJwtToken(MemberInfoDto info) { Map payloads = new HashMap(); Map headers = new HashMap(); headers.put("alg", "HS256"); headers.put("typ", "JWT"); payloads.put("name",info.getName()); payloads.put("picture", info.getPicture()); payloads.put("oauthId",info.getSub()); return Jwts.builder() .setHeader(headers) .setClaims(payloads) .setIssue.. 2023. 4. 4.
[Spring Boot] Security 없이 OAuth2 Google에서 받은 id_token 사용해 회원 정보 저장하기 2023.03.27 - [Project/모면] - [Spring Boot] Security 없이 OAuth2로 Google 로그인 구현, 유저 정보 얻기 이전 시간에 access_token을 발급받아오는 작업까지 마쳤다. 이제 id_token 안의 정보를 복호해 으로 만들어버리자. 먼저 RestTemplate을 이용해 POST 요청을 보내는 코드를 수정했다. ResponseEntity responseEntity = restTemplate .postForEntity(GOOGLE_TOKEN_URL, params, GoogleOAuthResponseDto.class); package com.momyeon.backend.dto; import lombok.AccessLevel; import lombok.Gette.. 2023. 4. 3.
0. 프로젝트 승인 2023년 3월 31일 ICT 한이음(프로보노) 프로젝트 드디어 승인! 약 9개월의 긴 프로젝트가 시작됐다. 주제도 좋고 꽤 괜찮은 팀프로젝트가 될 것 같아서 기대가 된다. 열심히 해야지. 난 대상을 노린다. 2023. 4. 1.
[Spring Boot] 면접 질문 카테고리 분류하기 대분류 public enum Division { COMMON("공통"), TECH("기술"), EXPERIENCE("경험"), FIT("인성"), ; private String korTitle; Division(String korTitle) { this.korTitle = korTitle; } } 소분류 public enum SubDivision { MOTIVATION("지원동기", Division.COMMON), INTRODUCTION("자기소개", Division.COMMON), NETWORK("네트워크", Division.TECH), ALGORITHM("알고리즘", Division.TECH), OPERATING_SYSTEM("운영체제", Division.TECH), DATABASE("데이터베이스",.. 2023. 4. 1.
도망친 곳엔 낙원은 없다 으으으음 플러터 어려워........ 백엔드-프론트엔드 연동하는데 oauth2 로그인 로직에 오류가 있는 걸 발견했는데 어떻게 처리해야 할지 3일째 고민 중이다. 이게 돼야 다음 과정 착착착 하는데... 콜백 redirect_uri를 뭐로 설정해야 하는지 모르겠다. 프론트에서 콜백을 받을 수 있단 말이야?..? 왜 플러터는 내부 코드로 포트 고정 못하는 건데..? 지금이라도 리액트로 도망가? 라는 생각이 자주 들지만 '도망친 곳엔 낙원은 없다' 되뇌이며 붙잡고 있다. (리액트로 도망가도 똑같음) 일단 프론트엔드는 모든 과정이 쉽지 않기 때문에 로직은 고민하는 동시에 컴포넌트 배치 시작했다. 관련 서적 찾아보니 이제서야 감이 온다. statefull widget... 어려우면서 어렵지 않은...... 그리.. 2023. 3. 29.
[Spring Boot] Security 없이 OAuth2로 Google 로그인 구현, 유저 정보 얻기 세션 저장, Spring Security 코드가 난무한 클론코딩 글들이 너무 많아 그냥 내가 쓰는 글이다... 웹 서버 애플리케이션용 OAuth 2.0 사용 | Authorization | Google Developers 이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 의견 보내기 웹 서버 애플리케이션용 OAuth 2.0 사용 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분 developers.google.com GCP 설정 후 "http://accounts.google.com/o/oauth2/v2/auth" 엔드포인트로 client_id, redirect_uri, response_type, scope 4개의 필수 파라미터와.. 2023. 3. 27.
[Flutter / Dart] Flutter로 REST API 호출하기 먼저 플러터에서 HTTP API를 호출하기 위해 패키지를 설치해야 한다. flutter pub add http flutter pub add test​ 나는 테스트 코드에서 실행시킬 거라 test 패키지도 설치했다. 정확히는 Dart 언어로 Api 호출하는 방법이다. 참고로 아래의 웹 사이트를 이용해 JSON 호출을 할 거다! https://jsonplaceholder.typicode.com/ JSONPlaceholder - Free Fake REST API {JSON} Placeholder Free fake API for testing and prototyping. Powered by JSON Server + LowDB. Tested with XV. Serving ~2 billion requests ea.. 2023. 3. 26.