본문 바로가기

반응형

Backend

(180)
[sqlite3] terminal접속 # 접속sqlite3 [파일경로/]파일명.sqlite3# 파일이 있는 directory에서 입력한다면 그냥 파일명만 사용해도 됨# 테이블 간단 조회.tables# 접속종료.quit
[DRF] Django Rest Framework (1-2) Null vs BlankNull=True는 값이 없어도 된다는 것을 의미Blank=True는 공백이라도 존재해야 한다는 것을 의미 Serializers VS Forms SerializerForm정의DRFDjango목적API-데이터 간 변환처리HTML폼 생성, 폼데이터 검증 및 처리동작인스턴스-JSON 간의 직렬화 및 역직렬화폼 렌더링하고 제출된 데이터 검증 모델 필드의 값 제한(like Java's Enum)from django.db import modelsclass Member(models.Model): class MemberAuth(models.TextChoices): USER = 'USER', 'User' ADMIN = 'ADMIN', 'Admin' GUE..
[DRF] Django Rest Framework (1-1) 기능 구현Member CRUDLogin 기능 - 이메일, 비밀번호 검증Api문서 자동화 - drf_yasg이용 gitHub : https://github.com/DerekYook/MunDeuk_py GitHub - DerekYook/MunDeuk_py: MunDenk ver.pythonMunDenk ver.python. Contribute to DerekYook/MunDeuk_py development by creating an account on GitHub.github.com  웹페이지는 template를 이용해 form으로 데이터를 주고 받는 식으로 작성했다. 현재 프로젝트 디렉토리 구조projectName/├── env/├── projectName/| ├── __init__.py| ├── ..
[DRF] Django Rest Framework (1) 기본 구조 세팅AppSetting1. apps.py 확인from django.apps import AppConfigclass StartserviceConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' name = 'MunDeuk.startService' 2. serializers.py 생성from django.contrib.auth.models import Group, Userfrom rest_framework import serializers# 데이터 표현 (Spring의 DTO와 유사한 느낌)# => 쿼리셋, 모델 인스턴스와 같은 복잡한 데이터를 JSON, XML과 같이 간단한 데이터로 변환하는 것이라고 한다.cla..
[DRF] Django Rest Framework (0) Python - Django를 이용해 MunDeuk서비스를 리팩토링 해보려고 한다.Step은 크게 두가지로 잡았다.1. 단순 회원가입 및 로그인 구현2. JWT, OAuth2, CSRF를 이용한 보안 기능 활성화 Python은 처음 다뤄보기 때문에 일단 공식 홈페이지의 Quickstart로 프로젝트를 생성해 보았다.홈페이지 : https://www.django-rest-framework.org/tutorial/quickstart/#quickstart Quickstart - Django REST frameworkWe're going to create a simple API to allow admin users to view and edit the users and groups in the system. C..
[gitHub] GitHub기본 CLI 기본적인 업로드 작업 Flow# 변경 내용 업로드 준비git add .# 변경 내용 적용 상태git status# 업로드에 대한 코멘트 작성git commit -m “comment”# 수정 및 업로드 상태 변화 확인git log# 업로드 경로 확인git remote --v# 업로드 시작git push origin main Git branch작업# 브랜치 생성과 동시에 이동git checkout -b [브랜치 이름]# 브랜치 이동git checkout [브랜치 이름]# 브랜치 생성git branch [브랜치 이름]# 하위 브랜치 생성git branch [브랜치 이름] [상위 브랜치 이름] error: failed to push some refs to ~repository경로~원인 : push시 원격 rep..
[Noti] 알림 전송 방식 4가지 ( SMS, Email, Kakao, Push ) 알림 전송시 사용할 공통 VO선언import org.apache.commons.lang3.builder.ToStringBuilder;import com.fasterxml.jackson.annotation.JsonAlias;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class HmsNotiVO { @JsonAlias({"noti_type", "notiType"}) private String notiType; //1.sms 2. email 3.kakao 4.push @JsonAlias("msg") private String msg; @JsonAlias({"mobile_number", "mobileNumber"}) private Strin..
[보안 취약점] PRG 패턴 (Post-Redirect-Get Pattern) 로그 아웃 후 캐시를 초기화 하지 않아 로그인 되었던 화면이 남아있는 이슈가 있었다.필터에서 캐시 초기화 진행뒤로가기 해도 정보가 넘어가게(양식 다시 제출 방지용)근데 session이나 cookie에 담는 것은 왜 안했을까? PRG 패턴 (Post-Redirect-Get Pattern)PRG패턴은 Post를 이용해 리소스에 대한 변경 요청이 있을때 해당 요청에 대해 재요청시 Post가 아닌 Get으로 Redirect되는 패턴이다. 웹 개발시 권장되는 디자인 패턴이다.이게 왜 중요하냐면 Post를 이용해 데이터를 전송하게 되는데 그 요청을 계속해서 재요청하게되면 동일한 데이터를 계속해서 전송하게 되기 때문이다.예를 들면 상품등록시 상품을 등록하는 요청에 대해 새로고침만 해도 해당 데이터가 전달되게 된다. ..

반응형