분류 전체보기
-
OAuth 구글 인증 로그인(Google login) #2(스프링 작성)OAuth 2019. 6. 5. 22:52
@RequestMapping(value = "/member/googleSignIn", method = RequestMethod.POST) public void doGoogleSignInActionPage(HttpServletResponse response) { OAuth2Operations oauthOperations = googleConnectionFactory.getOAuthOperations(); String url = oauthOperations.buildAuthorizeUrl(GrantType.AUTHORIZATION_CODE, googleOAuth2Parameters); //System.out.println("/member/googleSignIn, url : " + url); PrintWrit..
-
OAuth 구글 인증 로그인(Google login) #2(스프링 작성)카테고리 없음 2019. 5. 8. 19:46
OAuth 구글 인증 로그인 프로젝트 작성 절차 구글 API 사용하기 위해 다음 두 모듈 디펜던시 추가 Google API 사용하기 위한 빈 객체 생성. 똑같이 적으면 되는데 바뀌는 부분은 초록색 으로 밑줄 친 부분이다. 구글 클라우드 플랫폼에서 생성했던 사용자 인증 정보 및 승인된 리디렉션 URI를 속성 값으로 등록한다. 이전 포스팅 참조 https://blog.naver.com/p952973/221028003470 로그인 시 필요한 로직이고, 회원가입 관련 내용은 MemberController 에 작성해두었다. 등록한 객체를 사용하기 위해 MemberController 빈 객체에도 등록 MemberController에 멤버와 세터 추가한다. 로그인 요청 코드. 다음과 같이 코드 작성하면 String ..
-
OAuth 구글 인증 로그인(Google login) #1(환경설정)OAuth 2019. 5. 8. 16:41
구글, 카카오, 페이스북 등 타 계정을 통한 로그인 서비스를 제공하는 웹사이트가 많아지는 추세이다. 회원 가입을 귀찮아 하는 사용자들에게 보다 나은 접근성을 제공할 수 있다는 장점이 있다. 이를 위해서 OAuth라는 표준 인증 절차가 생겨났고, 서로 다른 두 집단이 정보와 리소스를 안전하고 신뢰할 수 있는 방법으로 공유할 수 있게 되었다. 각 사이트들이 상이한 방법으로 자사 계정을 통한 연동 로그인 서비스를 제공하고 있다. 그 중 구글 계정을 통한 연동 로그인 절차 포스팅. Google Cloud Platform 하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요. accounts.google.com 구글 서비스를 제공하는 Cloud Platform..
-
노드js (Node.js) 소켓 (Socket) 예제MEAN STACK/Socket programming 2018. 9. 12. 10:18
웹 어플리케이션을 개발할 때 MEAN STACK을 사용하는 가장 큰 이유 중 하나가 소켓 프로그래밍(Socket Programming)이라고 한다. c에서는 소켓 구조체에 서버의 정보를 직접 구조체에 입력하고, 데이터 저장 방식 또한 호환이 되도록 인디언을 고려하는 등의 번거로움을 겪어야 한다. 노드js 에서는 소켓 모듈을 지원해 이러한 번거로움을 회피해 개발할 수 있는 편리함을 제공한다.서버 작동시키기 위한 c 코드. 소켓 구조체를 통해 인디언 방식, 포트번호, 프로토콜 등을 직접 지정해줘야 한다. npm 명령어들을 통해 express, socket.io를 설치 후 js 코드 작성한다. 소켓 모듈의 주요 메소드와 주석을 통해 코드를 이해하면 메소드명설명on('메소드명', 콜백함수(data){}) 소켓 ..
-
Node.js Express 메모리(Memory) DBMEAN STACK/Memory DB 2018. 9. 12. 10:11
데이터베이스를 따로 두지 않고 서버에 직접 두고 제어하는 방법이 있다. 이를 메모리 DB라 칭한다. 속도가 빠르지만 서버가 꺼지면 데이터도 모두 초기화된다. 따라서 DB만 관리하는 서버와 백업 서버를 두어 정규 시스템 서버에 장애가 발생해(죽는 경우) 이용할 수 없을 경우 대체 시스템을 작동시키는 Failover 방식을 사용한다. 전역변수로 배열 객체 items를 생성한다. 글 제목과 내용 가지고 있는 배열 생성 ES6 문법 사용. var 대신 const와 let을 사용한다. ES6부터 객체는 상수(const) 키워드를, 미들웨어 내부 변수에 let 키워드를 사용한다. 기존 자바스크립트가 가지고 있는 문제점 해결된다(Scope 이해가 필요) 처음 메모 목록 페이지. items 초기 생성한 2개만 존재한다..
-
노드js(Node.js) NPM(Node Package Manager) 예제MEAN STACK/Node js 2018. 9. 12. 10:09
노드js도 스프링과 마찬가지로 여러가지 내외부 모듈을 사용할 수 있다. 이러한 모듈들의 집합을 NPM(Node Package Manager)라 한다. 스프링에서 Maven과 비슷한 역할을 하는 녀석이라고 이해하면 될 것 같다. 또한 노드js의 개발을 편하게 제공하는 프레임워크로 Express가 있다. Node js만으로 웹 개발을 하기는 굉장히 어려워 Express를 사용해야만 개발이 가능하다고 보면 된다. 메이븐에서 pom.xml에 Dependencies를 등록해 사용했듯이 Node.js에서는 package.json 파일에 설정하고 등록한다. Scriptlet을 사용할 수 있도록 돕는 ejs를 등록하는 과정 포스팅 새 프로젝트 생성위 Terminal 클릭해 npm 초기화 진행한다. 명령어는 npm in..
-
노드 js (Node.js), 웹스톰(webStorm) 다운 및 페이지 라우팅(Page Routing) 예제MEAN STACK/Node js 2018. 9. 12. 10:01
MEAN STACK이라는 말이 각광을 받고 있다. MongoDB, Express, Angular 4, Node.js를 이용한 웹개발을 일컫는다. 스프링이나 서블릿으로 할 수 있는 개발을 MEAN STACK을 통해 대체 가능하다는 말이다. 서블릿과 비교하면 스프링도 굉장한 코드량을 줄일 수 있었지만 MEAN STACK을 사용하면 더욱 간소화 할 수 있다. (Express를 사용하면 한줄로 서버를 동작시킬 수 있다.) Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 자랑한다. - 2009년 “라이언 달” 이 V8과 CommonJS ..
-
Angular 파일 업로드, 다운로드 (File upload, download) 예제MEAN STACK/Angular 2018. 9. 12. 09:52
노드, 앵귤러 파일 전송 미지원하기 때문에 npm 사용이 불가피하다. 파일 전송 모듈 1. connect-multiparty 1) 구현 간단함. 2) 파일명 변경 X 3) 파일 업로드 안했을 때 가짜 파일 생성됨. 이를 처리해주는 추가 작업 필요 2. multer 1) 구현 복잡(connect-multiparty에 비해) 2) 파일명 변경 가능 3) file 업로드 안할 경우 파일 생성 하지 않는다. 파일명을 변경해 관리할 수 있어야 보안에도 더 나을 것이다. (파일암호화 필요할 때 uuid등 통해 파일명 변경 할 수 있으니..) ng2-file-upload 모듈 설치app.module.ts에 FileSelectDirective, FileDropDirective import 후 declarations에 ..