목록2024/09 (11)
Nonamed Develog
문제 상황Django REST Framework를 이용해 사용자 회원가입, 로그인, 로그아웃, 프로필 관리 등을 구현하는 과정에서, 검증 로직이 각 뷰에 산재해 있어 중복된 코드가 많았고 유지보수가 어렵다는 문제를 겪었다. 또한, 비밀번호 확인과 같은 검증 로직이 일부 누락되어 있어 보완할 필요가 있었다. 특히, 회원가입 시 비밀번호 확인과 이메일 중복 검사가 간단한 수준에서 처리되었고, 수정 시 이를 반복적으로 작성해야 했다.문제 원인유효성 검증이 분산되어 관리: 회원가입, 로그인, 프로필 수정 등에서 유효성 검증 로직이 뷰에 직접 구현되어 있어 중복된 코드가 많았고, 검증 기준이 다를 수 있는 문제점이 발생했다.비밀번호 및 이메일 검증 누락: 회원가입 시 비밀번호 일치 여부를 확인하는 부분이 없었고,..
1. REST의 정의REST(Representational State Transfer)는 2000년 로이 필딩(Roy Fielding)의 논문에서 소개된 웹 아키텍처 스타일이다. REST는 웹의 기존 프로토콜인 HTTP를 기반으로 하여 시스템 간의 상호작용을 단순하고 확장 가능하게 만드는 것을 목표로 한다. REST는 자원을 기반으로 클라이언트와 서버 간에 상태 정보를 교환하는 방식으로, 이를 통해 웹 애플리케이션 간의 통신을 효율적으로 관리할 수 있다.2. REST의 주요 원칙REST의 아키텍처는 다음과 같은 6가지 주요 원칙에 기반한다:클라이언트-서버 구조 (Client-Server Architecture):클라이언트와 서버는 서로 독립적으로 동작해야 한다. 클라이언트는 사용자 인터페이스를 담당하고,..
14. Django에서 사용자가 로그인할 수 있는 간단한 로그인 뷰를 작성하세요.사용자가 로그인 폼을 제출했을 때, 해당 사용자를 인증하고, 성공적으로 로그인할 경우 'home' 페이지로 리디렉션합니다.로그인 실패 시 다시 로그인 페이지로 리디렉션하며, 실패 메시지를 출력하세요.from django.shortcuts import render, redirectfrom django.contrib.auth import authenticate, logindef login_view(request): if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] ..