플로우 차트 그려보기 실습을 하다가, 소셜로그인의 절차에 대해 고민하며 의문점이 들었다. 의문점을 촉발시켰던 의문의 그 문장소셜로그인에서 비밀번호. 그럼 이제 이거는 우리가 구글 로그인으로 자동 로그인으로 돼서얘네가 이 값을 가져온 거거든요. 그럼 이걸로만 아이디 값으로 나오고 있고 지금 비밀번호는 얘네가 체인으로 저장한 거를 지금 진행하고 있는 거예요. 토큰을. 소셜로그인, 자동로그인, 체인?소셜 로그인: 사용자가 구글 같은 소셜 플랫폼 계정을 통해 로그인하는 방식.사용자가 별도의 회원가입이나 비밀번호 입력 없이 구글 계정을 이용해 로그인한다. 자동 로그인: 한 번만 계정 정보를 입력해두면, 후에는 자동으로 정보를 불러와 로그인하는 방식.사용자가 구글 계정으로 로그인하면, 시스템이 자동으로 구글에서 ..
역시 비교봇/등록봇 코드를 보다 보니, 쿼리문 생성 시 placeholder를 활용하는 곳이 있어 찾아보았다. 결론부터 말하면 이 로직은, "INSERT 쿼리에 placeholders를 추가하여 최종 SQL 쿼리 생성"이것이다. 예를 들면 마지막 문장으로query += placeholders;placeholders**에서 생성된다수의 SQL 자리 표시자(Placeholders)를query 문자열에 추가하여 최종적으로 INSERT SQL 쿼리를 완성 이런 형태로 활용하곤 한다. 배경1. query 초기 상태:- 코드에서 query는 기본적인 INSERT INTO 쿼리 구문이다.let query = `INSERT INTO tb_products (` + colArr.join(',') + `) VALUES `..
실무에서 코드 자동화 상품 등록봇/비교봇을 수정하다가, 로직에 대해 차이를 조금 더 파보았다.등록봇등록봇 핵심 - 상품 정보 등록 및 업데이트 Text-based Flow DiagramStart │ ├──> 초기화: `shopName`, `productInfo` 등 입력값 확인 │ ├──> 상품 추가 (`insertQuery`) │ └── 데이터베이스에 신규 상품 데이터 추가 │ ├──> 상품 변경 (`updateQuery`) │ ├── 기존 데이터의 `useYn` 값을 "N"으로 변경 │ └── 데이터베이스에 변경된 데이터 추가 (`insertQuery`) │ ├──> 상품 삭제 │ ├── 기존 데이터의 `useYn` 값을 "N"으로 변경 │ ..
스터디를 하다가, 정보의 순정성과 관련된 설명이 나와서 간단히 정리해보았다. 정보의 순정성(Information Integrity)"정보가 원래 의도된 대로 변질되지 않고, 신뢰할 수 있으며 정확하게 유지되는 것"을 의미합니다.이는 정보가 생성된 후부터 전달되고 사용될 때까지 일관성과 무결성이 보장되는 것을 말한다. 주요 요소정확성(Accuracy): 정보가 사실과 일치하며 오류 없이 제공되는지 여부.일관성(Consistency): 정보가 여러 시스템 또는 채널에서 동일하게 나타나는지 여부.신뢰성(Reliability): 정보가 의도된 목적에 부합하고, 사용자가 신뢰할 수 있는지 여부.무결성(Integrity): 정보가 승인되지 않은 수정 없이 원래의 상태를 유지하는지 여부.예시데이터베이스 관리- 시스템..
SQL 스크립트에서 왜 ?를 사용할까?역시 비교봇 / 등록봇 코드를 보다가, ?이 하도 많아서, 기억을 더듬어볼 겸 ?의 사용에 대해 정리를 해보았다. 1. 물음표 기호(?)의 쓰임- SQL의 '자리 표시자(Placeholder)'로 사용된다.: SQL 쿼리에서 동적으로 값을 삽입할 때 데이터베이스에 직접 값을 넣는 대신에 ?로 자리를 표시한다. => 이후, JavaScript에서 values 배열에 실제 데이터를 채우면 데이터베이스가 이를 바인딩하여 처리한다. 2. 물음표 기호 사용 목적1) 보안 강화- SQL 인젝션 방지: SQL 쿼리에 값을 직접 삽입하면 보안 문제가 발생할 수 있다(ex: SQL 인젝션 공격).=> ?를 사용하면 값이 안전하게 바인딩되므로 SQL 인젝션을 방지할 수 있다. 아래와..
템플릿화 시스템의 구조Admin Side이벤트 운영에 필요한 정보를 입력하고 저장하는 백오피스 역할이다.특정 유저 노출에 필요한 정보와 이벤트 당첨 정보를 관리한다.백오피스에서 입력된 정보를 저장하고 조회 기능을 통해 다시 확인이 가능 Data Side이벤트 정보와 신청 정보를 저장하는 데이터베이스(DB)로 구성된다.데이터는 필요 시 조회하여 User Side에 노출한다. User Side:저장된 정보를 바탕으로 화면에 노출되는 구조이다.FO 템플릿 (유형 1, 2, 3):여러 유형의 템플릿이 존재하며, 각 유형에 맞춰 화면에 표시된다.분기 처리하여 하나의 구조로 다양한 템플릿을 노출하거나, 각각의 템플릿을 별도로 설정할 수 있다.템플릿 시스템의 작동 원리어드민(백오피스)에서 이벤트 정보를 입력하고 저장..
1) 온라인 서비스의 운영 방식온라인 서비스 구조데이터의 입력, 처리, 출력의 구성을 통해 운영됨.사용자가 접속하는 다양한 기기(브라우저, 앱 등)에 데이터를 정확하게 전달하여 화면에 표시되도록 함.웹 브라우저는 서버에서 받은 코드를 해석하여 화면에 그림처럼 표시.앱은 설치된 구조 안에 데이터를 주입하여 표시. 주요 데이터의 형태1) Y/N : 특정 상태 여부를 판단.2) 01, 02, 03, 04: 상태 변화 구분을 위한 숫자 값, 예를 들어 시간에 따른 상태 변경.3) Sequence: 이전 값에 +1을 하여 새로운 번호 생성, 반복적으로 생성되는 데이터에 사용 (예: 이벤트 ID).4) TEXT: 지정된 텍스트 값, 다양한 언어와 코드 조합 가능. 기획 시 고려 사항1) 확장성을 고려한 기획- 상..
본인인증과 점유인증의 공통점은 "사용자가 본인임을 확인하는 인증 방식" 이라는 것. 본인인증목적: 사용자가 실제로 본인인지(본인임)를 확인하는 절차.방법: 일반적으로 주민등록번호, 휴대폰, 신분증 등 법적으로 유일한 정보와 함께 인증을 진행한다.대한민국에서는 통신사 본인인증, 아이핀(i-PIN), 신용카드 인증 등이 주로 사용된다.예시: 온라인 쇼핑몰 가입 시 주민등록번호와 핸드폰 번호로 본인 확인을 요구하여, 사용자가 실제 본인임을 인증하는 경우.점유인증목적: 특정 기기나 전화번호, 이메일 등 사용자가 실제로 점유하고 있는지를 확인하는 절차.방법: 인증 코드(OTP)나 SMS, 이메일 링크 등의 방법을 통해 인증이 이루어진다.점유 인증은 본인의 장치를 통해 인증 절차를 완료하게 하는 방식이다.예시: ..