
안녕하세요. 자바스크립트 스프링으로 애플로 로그인 대망의 마지막 3편 입니다. 사용자들마다 개발 환경이 다르기 때문에 따라하기에 많은 어려움이 있을것으로 예상됩니다. 저또한 애플로 로그인을 구현하기 위해 jwt에 대한 개념, rest api에 대한 개념, http통신에 대한 개념을 다시한번 찾아보며 구현을 했기 때문에 많은 어려움이 있었습니다. 이해가 안되는 부분이 있으시면 각 개념에 대한 공부를 하시고 다시 참고하며 도움이 될 것입니다 . 그리고 아마 import가 안되는 클래스들이 많을텐데 maven repository에서 모듈을 추가해서 사용하시기 바랍니다. 참고로 저는 com.nimbusds nimbus-jose-jwt 8.4 io.jsonwebtoken jjwt 0.9.1 org.bouncyca..

애플로 로그인 (자바스크립트, 스프링) 완벽파헤치기[1]편에 이어 오늘은 [2]편 프론트엔드 작업을 해보겠습니다. 아직 1편을 안보고 오신 분들은 developer111.tistory.com/56 1편을 참고하고 와주세요. 위의 양식을 애플로 로그인을 구현할 페이지에 넣어주면 됩니다. 코드가 애플로 로그인 버튼을 나타냅니다. 적절한 위치에 넣어주시고 디자인은 커스터마이징 할 수 있으며 애플의 가이드라인에 맞춰서 진행하면 됩니다. 메타 태그를 작성하지 않고 스크립트를 통해서도 설정할 수 있습니다. 위의 두 코드 예시는 서로 같게 작용합니다. ClientID에는 serviceID를 등록할때 사용했던 Identifer를 사용해주시고, scope는 애플로부터 받아올 정보인데 name과 email을 받아올 수 있..

소셜 로그인 구현 중 가장 까다롭다는 애플로 로그인에 대해 정말 하나부터 열까지 끝까지 파헤쳐보도록 하겠습니다. ios개발자이거나 웹개발자라고 하더라도 ios나 애플과 관련된 서비스를 구현할때 애플이 얼마나 까다로운지는 다들 알고 계실 것입니다. 안드로이드와 비교해보면 간단한 설정 몇가지로 쉽게 구현되는 부분도 있고 성능적으로 뛰어난 부분도 있지만 애플은 대체로 보안과 관련된 부분은 굉장히 까다로운것 같아요. 애플로 로그인도 사용자 정보와 관련된 내용이라서 다른 소셜 로그인 구현 난이도에 비해 굉장히 절차도 많고 까다로우며 복잡합니다. 그래서 한번 끝까지 파헤쳐보려고 합니다. 프론트엔드에서는 자바스크립트를 이용할 것이며 백엔드에서는 자바 스프링 서버에서 작업을 해보도록 하겠습니다. 크게 개요를 잡아보면 ..

안녕하세요. 네이버아이디로 로그인기능을 사용하는데 이상하게 정상적으로 작동할 때가 있고 안할때가 있어서 어디에서 차이가 있는건지 삽질하며 찾아보니 www가 붙을때와 안붙을때의 차이가 있었습니다. var naverLogin = new naver.LoginWithNaverId( { clientId: "클라이언트 아이디", callbackUrl: "http://myWeb.com/callbackUrl", isPopup: false, callbackHandle: true } ); 저는 자바스크립트 sdk를 통해 네아로를 사용하는데 위와 같은 형식으로 보통 콜백url 을 설정합니다. 지금 위의 코드에서 설정되어 있는 callbackUrl을 보면 www가 없는 non-www 도메인입니다. callbackUrl을 no..

안녕하세요. 오늘은 웹에디터에서 가장 많은 사람들이 사용하는 써머노트에 대해 알아보겠습니다. 써머노트를 다운 받고 써머노트에 나와 있는 에디터 기능중에 사용하지 않을 기능을 제거하고 디자인을 간단히 변경해보도록 하겠습니다. 아래 링크에서 써머노트를 다운 받아주시고 압축까지 풀어주세요. summernote.org/ Summernote - Super Simple WYSIWYG editor Super Simple WYSIWYG Editor on Bootstrap Summernote is a JavaScript library that helps you create WYSIWYG editors online. summernote.org 새로운 프로젝트를 진행할 summerNote라는 이름으로 폴더를 하나 만들고 다..
안녕하세요. 오늘은 스프링 시큐리티의 remember-me기능을 통해 자동로그인기능을 구현한 경우 로그인 인증 권한과 remember-me 기능을 커스터마이징 해야한 상황에서 이슈 대응법에 대해 알아 보겠습니다. 로그인 인증 권한을 얻는 것에 대해서는 따로 설명하지 않고 remember-me 쿠키 생성에 관해서 알아보도록 하겠습니다. 로그인 인증 권한을 얻는 것은 너무 다양한 방법이 있고 개발자마다 다르게 설정하는 경우가 많아 구글링의 많은 소스들을 통해 자신의 프로젝트에 맞게끔 구현하는것을 추천드립니다. 일단, 어떤 상황에서 이런 커스터마이징이 필요한지 예를 들어보겠습니다. 네이버 아이디로 로그인, 카카오톡으로 로그인, 페이스북으로 로그인 등 요즘 sns 로그인 기능을 구현한 웹, 앱 프로젝트가 많이 ..

안녕하세요. 오늘은 RDS와 EC2를 연동해보도록 하겠습니다. RDS와 EC2를 연동하는 목적은 서버 인스턴스와 DB 인스턴스를 분리하여 사용하기 위한 목적으로 AWS를 사용하는 핵심 이유이기도 할 것입니다. 우리가 웹서버를 운용할때 DB를 운영하는 방법은 두가지가 있습니다. 첫번째, 서버 내에 DB를 설치하는 경우 서버 내에 DB를 설치하여 운영하는 방식은 초보자도 쉽게 관리할 수 있다는 장점이 있으며 AWS를 사용하는 경우 비용도 저렴하다는 장점이 있습니다. 허나 단점은 고가용성 있는 서버를 구축하기가 어렵다는 것입니다. 이에 대한 예시는 분리하여 사용하는 경우를 보면 더욱 이해하기 쉬울 것입니다. 서버와 DB를 분리하는 방식, 즉 RDS와 EC2를 연결하는 방식을 사용하며 위의 이미지처럼 하나의 서..
HTTP Status 500 - Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (2288140) exceeds the configured maximum (2097152) org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested excep..