목록 Development/Backend (11)
글쓰는 개발자
[NestJS] 구글 소셜 로그인 OAuth2로 JWT 발급구글 로그인 OAuth 인증 등록1. 프로젝트 생성구글 클라우드 콘솔(https://console.cloud.google.com)에 접속합니다.현재 프로젝트 버튼을 클릭해서 새프로젝트를 생성합니다.2. Google 인증 플랫폼 구성탐색gran007.tistory.com Jwt 토큰을 얻었으면 이제 JWT를 통한 검증과 내부에 userId를 얻을수가 있습니다.jwt 검증과 이를 통해 user 정보를 얻어 각 컨트롤러에 제공하기 위해 JwtStrategy를 생성합니다.passport-jwt 패키지를 설치합니다.npm i passport-jwt JwtStrategyimport { Injectable } from "@nestjs/common";impor..

구글 로그인 OAuth 인증 등록1. 프로젝트 생성구글 클라우드 콘솔(https://console.cloud.google.com)에 접속합니다.현재 프로젝트 버튼을 클릭해서 새프로젝트를 생성합니다.2. Google 인증 플랫폼 구성탐색메뉴 - API 및 서비스를 클릭gran007.tistory.com위 단계를 따라 구글 OAuth 인증등록을 완료했다면 이제 NestJS에서 구글 로그인을 구현해봅시다.패키지 설치npm i passport-google-oauth20 @nestjs/passport passport passport-local @nestjs/config @nestjs/jwtnpm i -D @types/passport-google-oauth20 @types/passport-local .env 파일을..

1. 프로젝트 생성구글 클라우드 콘솔(https://console.cloud.google.com)에 접속합니다.현재 프로젝트 버튼을 클릭해서 새프로젝트를 생성합니다.2. Google 인증 플랫폼 구성탐색메뉴 - API 및 서비스를 클릭하여 API 및 서비스 화면으로 이동합니다.여기서 OAuth 동의 화면 버튼을 클릭하여 Google 인증 플랫폼 / 개요 화면으로 이동합니다.시작하기 버튼을 클릭하여 Google 인증 플랫폼을 구성합니다.연락처 정보와 완료 밑에 정책 동의 체크박스를 클릭하고 만들기 버튼을 누르면 인증플랫폼 구성이 완료됩니다.그 뒤에 화면에 OAuth 클라이언트를 생성할 수 있는 버튼이 보입니다. OAuth 클라이언트 만들기 버튼을 클릭합니다. 3. OAuth 클라이언트 생성어플리케이션 유형..

[kotlin / spring] HTTP 사용방법Postman은 좋은 API 호출 도구이지만 인텔리J를 사용한다면 HTTP 형태의 파일로 간편하고 유용한 API 호출을 수행할 수 있다. [kotlin / Spring] CRUD Rest API 구현 / JPA 테이블 연동JPA를 사용하기 위해서는 DBgran007.tistory.com API를 호출할때 HTTP 파일을 사용하면 API를 호출하는 것보다 편하게 이용할 수 있습니다. http 파일 형식은 기본적으로 vscode에서 사용할수 없지만 플러그인의 설치로 HTTP를 호출할 수 있습니다.1. Extension 설치vscode의 extension 탭으로 가서 rest client를 설치하면 http 파일에서 API 호출을 사용할 수 있습니다. .http..
관계설정 프로젝트 테이블이 존재하고, 하나의 프로젝트가 여러개의 보드를 가질수 있다고 할때 프로젝트와 보드는 각각 1 : N의 관계를 가진다. TypeORM에서는 Entity들 간에 이러한 관계설정이 가능하다. project 테이블columntypeidnumbernamestring board 테이블columntypeidnumbernamestringprojectIdnumber 그럼 각각의 Entity에 관계설정을 해주자. Project는 여러개의 Board를 가질수 있기 때문에 OneToMany관계를 설정해준다.@Entity('project')export class ProjectEntity { @PrimaryGeneratedColumn() id: number; @Column({nullab..

TypeOrm 설치 1. type orm dependency를 설치한다.npm install typeorm @nestjs/typeorm mysql2 2. typeorm.config.ts 파일을 만들고 DB 접속정보를 입력한다.import { TypeOrmModuleOptions } from "@nestjs/typeorm"export const typeORMConfig: TypeOrmModuleOptions = { type: "mysql", host: "localhost", port: 3306, username: "username", password: "password", database: "dbName", entities: [__dirname + '/**/*.entity{.tx,.js}'],..
테이블 생성 명령테이블 생성을 위한 스크립트 명령을 DDL(Data Definition Languag)이라고 부른다.테이블 생성 명령은 create table [테이블명] 으로 시작하고 괄호 사이에 테이블을 구성할 컬럼을 적는다.다음은 사용자 테이블 생성을 위한 테이블 생성 구분이다.create table users( id bigint auto_increment primary key comment '아이디', provider_id varchar(255) not null comment '프로바이더 아이디', email varchar(255) not null commen..
사용자를 생성하려면 root 권한 혹은 사용자 생성 권한을 가진 사용자로 로그인 해야한다.사용자 생성1. root계정으로 로그인mysql -uroot -p 2. 사용자 생성사용자 ID와 비밀번호로 사용자를 생성한다. localhost에서만 접속하려면 localhost용 계정을 생성한다.create user '사용자ID'@'localhost' identified by '비밀번호';외부에서 접속 하려면 @뒤에 ip를 적거나 모든 ip 허용을 위한 %를 host로한 계정을 생성한다.// ip 기반 접속create user '사용자ID'@'192.168.0.7' identified by '비밀번호';// 모든 외부 접속 허용create user '사용자ID'@'%' identified by '비밀번호'; 3. ..