Backend [Project] 숭고 Soongo - 백앤드 진행편 고수 회원 가입 API 숭고 사이트에 한번도 가입하지 않은 사람은 바로 가입할 수 있다. 일반 회원으로 가입했던 사람도 로그인한 상태에서 고수로 전환하기를 선택하면 고수로 가입할 수 있었다. 고수로 가입한 회원은 일반 회원의 기능을 모두 이용할 수 있는데, 일반 회원으로 전환하는 버튼을 누르면 로그인한 상태에서 이동이 가능하다. 관계형 DB를 모델링할때는 1:1 관계 설정은 지양해야 한다고 ... 1차프로젝트진행중wecodefullstackBackend숭고soongo1차프로젝트 jasper codeblock .jsp에서 자바 코드 작성하기 일반적인 html 형태의 jsp 파일 안에서 변수를 선언하고 자바 코딩를 넣고 싶다면 코드 블럭을 사용하면 된다. 만약 코드 블럭을 사용하지 않으면 Jasper는 해당 내용을 화면에 그대로 출력해버린다. 코드 블럭은 <% %> 이다. 넣고 싶은 자바 코드를 블럭안에 넣으면 된다. (예시) 수식 삽입 서블릿 코드에 y = x + 3을 자바코드로 넣고 싶다면 아래... JavawebBackendjspBackend HTTP란? 두번째. 대부분의 경우 사용자 에이전트는 웹 브라우저이지만 웹을 크롤링하는 프로그램과 같이 무엇이든 될 수 있습니다. 서버는 반드시 하나일 필요는 없으며 여러 서버 인스턴스가 동일한 시스템에서 호스팅 될 수 있습니다. 프록시는 다음과 같은 다양한 기능을 수행할 수 있습니다. HTTP/1.0에 도입된 HTTP 헤더를 사용하면 이 프로토콜을 쉽게 확장하고 실험할 수 있습니다. 헤더 확장성을 이용하여 HT... roadmapBackendhttpBackend [HTTP] http에 대하여 - 인증/인가 (1) 마침 오늘 오전 인증/인가 관련 세션이 진행되어 이어서 내용 정리해본다. 로그인을 하면, 나는 상품을 구매할 수 있다. 내 비밀번호는 중요한 개인정보이기 때문에 서버는 그대로 저장하지 않고 암호화 작업을 거친 후 저장한다. 이 때 hash 함수가 사용된다. 원본 메세지를 알면 digest는 알 수 있음 하지만 digest를 알아도 원본 메세지는 알 수 없음 하지만 hash 함수도 결국 dig... 인가bcryptBackendPayloadJWT인증TokenhttpBackend [Back-end] N+1 문제 N+1은 JPA(Java Persistence API)를 사용하면서 연관관계를 맺는 엔티티를 사용한다면 한번 쯤 부딪힐 수 있는 문제이다. N+1문제 발생 시 성능에 큰 영향을 줄 수 있다. N+1 문제 연관 관계에서 발생하는 이슈로 연관 관계가 설정된 엔티티를 조회할 경우에 조회된 데이터의 개수만큼 연관 관계의 조회 쿼리가 추가로 발생하여 데이터를 읽어오게 된다. 이것을 N+1 문제라고 부... BackendBackend [python 기초] Code-kata week2-5 🖥 Code-kata week2-5 문제 인자인 height는 숫자로 이루어진 배열입니다.그래프로 생각한다면 y축의 값이고, 높이 값을 갖고 있습니다. 아래의 그래프라면 height 배열은 [1, 8, 6, 2, 5, 4, 8, 3, 7] 입니다. 저 그래프에 물을 담는다고 생각하고, 물을 담을 수 있는 가장 넓은 면적의 값을 반환해주세요. 풀이 사실 이 문제는, code kata 시간 때 ... pythonBackendbrute forceBackend Domain 그것은 인터넷에서 사용할 수 있는 모든 웹 서버에 대해 사람이 읽을 수 있는 주소를 제공합니다. 인터넷에 연결된 모든 컴퓨터는 IP 주소, 즉 IPv4 주소(예: 173.194.121.32) 또는 IPv6 주소(예: 2027:0da8:8b73:0000:0000:8a2e:0370:1337)를 통해 연결할 수 있습니다. 이러한 모든 문제를 해결하기 위해 우리는 '도메인 이름'이라는 사람이 읽을 ... damainBackendroadmapBackend HTTP란? 세번째. HTTP/0.9은 단순히 HTML 응답용으로만 설계된 것과는 달리 HTTP/1.0은 이미지, 비디오 파일, 일반 텍스트 또는 기타 콘텐츠와 같은 다른 응답 형식도 처리할 수 있습니다. HTTP/0.9는 헤더가 없었기 때문에 이러한 정보를 보낼 수 없었습니다. 이 버전에서 요청 및 응답 헤더는 여전히 'ASCII'로 인코딩된 상태로 유지되었지만 응답 본문은 이미지, 비디오, HTML, 일반 텍... roadmapBackendhttpBackend HTTP의 구조 및 핵심 요소 HTTP 핵심요소 HTTP 구조 자주 사용되는 HTTP 메소드와 Status Code HTTP HTTP 요청과 응답 이 경우 HTTP 요청은 "/ping" 주소에 GET 요청을 보내는 것이고, 추가로, 이러한 stateless란 특징 때문에 예를 들어 HTTP 요청을 처리하기 위해서는 해당 사용자가 로기인이 되어 있어야 한다고 할 때, 새로 보내는 HTTP 통신에서는 해당 사용자가 그 전 H... BackendBackend [Mysql] json으로 데이터 받아오기 위와 같이 구성된 Nutritions 테이블에서 fat부터 caffein까지 칼럼들을 data안, nutritionsInfo 안 json형식으로 가져오고 싶습니다. 이렇게 가져오면 됩니다. 1️⃣ 1개의 테이블에서만 만들기 (join이 필요없는 경우) 2️⃣ 여러개의 테이블을 합쳐서 만드는 경우(join 필요한 경우)... mysql쿼리문정리BackendBackend [Mysql] 배열로 받아오기 products.Id, products.name, categories.name, image_urls.url을 셀렉트하였다고 가정해보았습니다. 이 데이터가 이상해보이는 이유는 imageUrl이 3개 인 바나나가 데이터가 3번 나타났기 때문입니다. imageUrl을 배열로 묶으면 해결 될 것입니다. 배열을 만드는 부분만 작성해보았습니다. 일반적인 형식 조건을 여러개 붙일 때 주의해야할 점이 있습... mysql쿼리문정리BackendBackend [HTTP] http에 대하여 - 인증/인가 (2) http 인증/인가 🔐 django에서 인증/인가 (bcrypt, JWT) 를 구현하는 방법과, 인증/인가 간단 summary 이 때 비밀번호는 암호화해서 저장 (bcrypt 사용) 인가, Authorization: 사용자의 접근 권한을 확인하는 과정 (즉, 이 사용자가 request를 요청할 권한이 있는가를 판단) 그래서, django로 API를 구현할 때, 사용자의 비밀번호를 전달 받으면... authorizationdjangoBackendauthenticationTokenhttpBackend API 개발 API 실행 장고와 같은 다른 파이썬 웹 프레임워크들은 여러 모듈과 기능들을 제공하느라, 프레임워크 자체가 무겁고, learning curve가 높을 수 있지만, flask는 비교적 쉽게 배워서 사용할 수 있으므로 API 개발 입문용으로 사용하기에 적합한 프레임워크이다. 즉, Flask와 같은 웹 프레임워크를 사용하믕로써 개발자는 웹 시스템을 통해 제공하고자 하는 비즈니스 로직에만 집중할 수... BackendBackend day08 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다. 연결된 애플리케이션과 함께 데이터와 DBMS를 하나로 묵어 데이터베이스 시스템이라고 한다. 둘은 우선 용어부터 다르다. 데이터베이스를 저장할 데이터를 작성 방식으로 구분하는데 관계형은 관계를 중시하며 데이터의 중복을 피하기 위해 여러 테이블로 나누어 저장한다. 문서형은 이와 반대로 다른 구조의 데이터를 같은 컬... expressnodejsBackendBackend Miniter API 개발하기 다른 회원 팔로우 jsonify 모듈 : request를 통해 사용자가 HTTP를 통해 전송한 JSON를 읽고, api내부의 dictionary 객체를 JSON으로 변환하여 HTTP 응답으로 보낼 수 있음 메인 기능 중 하나인 300자 제한 트윗 (tweet) 글 올리기 엔드포인트 (endpoint)를 구현 사용자가 300자 이내의 글을 전송하면 endpoint는 사용자의 글을 저장하고 있으... BackendBackend 해시를 만드는 함수 해시를 만드는 함수와 해시를 검증하는 함수를 만들기 위해서는 아래의 모듈을 설치해주어야합니다! 모델 메서드는 모델에서 바로 사용할수 있는 함수를 말해요! 모델 메서드는 두가지 종류가 있습니다. 인스턴스 메서드 = 인스턴스(할당된 부분)에서 사용 가능 함수 스태틱 메서드 = 모델에서 바로 사용할 수 있는 함수... hashBackendBackend ☁️ BE TIL Day 13 0330 Method that was used in apollo-server Need to create swagger typeDef is created automatically Thus, the docs are created automatically by using resolver. => It gets the types from resolver file. No need to write schema o... DatabasegraphqlBackendApollo clientdbeaverApollo client [Fastapi] object 분석하기(FastAPI, APIRouter, ...) 예시 코드를 먼저 확인해봅시다. 1. FastAPI Class app 인스턴스 선언 FastAPI object이자 API를 위한 모든 기능을 제공함 APIRouter api_router 인스턴스 선언 API endpoint들을 grouping app.include_router 메소드로 app 인스턴스에 api_router를 등록(register) 왜 FastAPI랑 APIRouter가 분리되... FastAPIBackendBackend wsl2에 mysql설치하기 이전에 만들어둔 ERD를 통해 DB설계를 간단하게 하고, 로컬로 DB서버를 열어 확인하려던 순간 에러가 발생했다. 이유는 즉, WSL2을 통해 VSCODE를 사용하기에 WSL2환경에서 켜진 DB서버를 찾았는데 MYSQL은 윈도우에 깔려있었다. 해결책은 2가지이다. WSL2의 일부 포트 방화벽을 허용해서 윈도우와 연결을 하는 방법(비추, 굳이 방화벽을 열고 허용하고 설정하는 것은 시간이 오래걸... mysqlWSL2dbBackendBackend 백엔드 초기 세팅하기 타입스크립트 기반의 nodejs 백엔드 초기 세팅 DBeaver 다운로드 - 플러그모양눌러서 postgreSQL 연결하기 typeORM 설치 package.json은 자동으로 설치 되지만, 안된다면 만들어줄것 타입스크립트 설치 tsconfig.json 파일을 만들기 [https://www.typescriptlang.org/] 이 사이트에서 what is config.json vscode에 백... dbBackendBackend [http] REST API software 아키텍처 - REST REST - Representational State Transfer 는 정확히는 아키텍처 원리를 의미하는데, (REST 외에 SOAP, Graphql, GRPC 등이 있다) 프로젝트를 진행할 때 다양한 step이 존재하고, 어느 정도 API 구현이 완료되면 프론트와 논의하여 uri를 포함, headers, 상태코드 등을 작성하게 된다. 응답: 200,2... APIRESTpath parameterBackendquery parameterhttpAPI [Backend]FastAPI 입문 2 : db(데이터베이스) GET,POST 및 Swagger UI data validation(유효성 검사)을 위한 python library 내장 라이브러리이므로 별도 설치가 필요 없음 -data validation : 데이터가 정확하고 유용한지 확인하기 위해 데이터 정제를 거쳤는지 확인하는 프로세스 새로운 언어를 익힐 필요 없다(IDE에서 쉽게 활용 가능) Customizing이 가능하다. 빠르고 python data class랑 부합한다. 우리는 이 ... 데이터베이스FastAPIdbBackendPydanticBackend 스마트 해상물류 - web 개발 해당 스마트 해상물류 프로젝트에서 겪은 오류나 느낀 점들을 기록해두도록 하겠다. 먼저 해당 프로젝트는 주로 python을 기반으로 프로젝트를 진행하므로 웹 프레임워크로 django를 선택하였다. 작년에 한이음 프로젝트를 하며 제공받았던 스파르타 코딩 클럽의 django 강의 교안을 참고하며 프로젝트 웹사이트 데모를 제작하였다. 진행 과정 데모 사이트 제작이므로 간단히 로그인 기능과 index... dbdjango스마트해상물류 멘토링Backendsparta codingBackend [Back-end] OpenID OpenID Connect는 권한부여 서버에 의해 작동하는 인증시스템을 기반으로 클라이언트가 사용자를 판단할 수 있게 해준다. ID 토큰을 얻은 후에 클라이언트는 payload 부분에 인코드된 사용자 정보를 얻을지 결정할 수 있다. 클라이언트는 이런 정보를 이용해 사용자를 인증할 수 있다. 클라이언트가 더 많은 사용자 정보를 원한다면, 클라이언트는 표준 OpenID Connect 스코프에 더... BackendBackend ☀️ BE TIL Day 17 0405 ⬇️ Main Note 🌿 Type settings isSoldout is in a boolean type, which the default value is written as false. When isSoldout changes into true, then the user cannot edit the product. 🌿 Entity Query Settings ⬇️ command shortc... APIDatabaseCRUD APIBackenddockerdbeaverAPI ☀️ BE TIL Day 16 0404 ⬇️ Main Note 🌿 Basic ↘️ Starting the SQL inside the database ↘️ Joining two tables with id ↘️ When yiu write update tattoo set name='myFirstTattoo'; => Error occurs like this. So, there should be a condition for the code... mysqlDatabaseBackendsqltypeOrmentityBackend Nestjs 폴더 구조 우선 nestjs를 다운 받아보자. 이때 npx라는 것으로도 nest를 다운 받을 수 있다. npx? npm 5.2.0 버전부터 새로 추가된 도구로 일회성 명령으로 패키지를 사용할 수 있도록 해준다. 참조: 앞서 말한 대로 nestjs를 설치하면 어떠한 package manager를 사용할 지 물어본다. yarn을 주로 사용하니 yarn을 선택해보도록 하겠다. 이러한 감사메시지와 함께 tes... NestJSnodejsBackendBackend
[Project] 숭고 Soongo - 백앤드 진행편 고수 회원 가입 API 숭고 사이트에 한번도 가입하지 않은 사람은 바로 가입할 수 있다. 일반 회원으로 가입했던 사람도 로그인한 상태에서 고수로 전환하기를 선택하면 고수로 가입할 수 있었다. 고수로 가입한 회원은 일반 회원의 기능을 모두 이용할 수 있는데, 일반 회원으로 전환하는 버튼을 누르면 로그인한 상태에서 이동이 가능하다. 관계형 DB를 모델링할때는 1:1 관계 설정은 지양해야 한다고 ... 1차프로젝트진행중wecodefullstackBackend숭고soongo1차프로젝트 jasper codeblock .jsp에서 자바 코드 작성하기 일반적인 html 형태의 jsp 파일 안에서 변수를 선언하고 자바 코딩를 넣고 싶다면 코드 블럭을 사용하면 된다. 만약 코드 블럭을 사용하지 않으면 Jasper는 해당 내용을 화면에 그대로 출력해버린다. 코드 블럭은 <% %> 이다. 넣고 싶은 자바 코드를 블럭안에 넣으면 된다. (예시) 수식 삽입 서블릿 코드에 y = x + 3을 자바코드로 넣고 싶다면 아래... JavawebBackendjspBackend HTTP란? 두번째. 대부분의 경우 사용자 에이전트는 웹 브라우저이지만 웹을 크롤링하는 프로그램과 같이 무엇이든 될 수 있습니다. 서버는 반드시 하나일 필요는 없으며 여러 서버 인스턴스가 동일한 시스템에서 호스팅 될 수 있습니다. 프록시는 다음과 같은 다양한 기능을 수행할 수 있습니다. HTTP/1.0에 도입된 HTTP 헤더를 사용하면 이 프로토콜을 쉽게 확장하고 실험할 수 있습니다. 헤더 확장성을 이용하여 HT... roadmapBackendhttpBackend [HTTP] http에 대하여 - 인증/인가 (1) 마침 오늘 오전 인증/인가 관련 세션이 진행되어 이어서 내용 정리해본다. 로그인을 하면, 나는 상품을 구매할 수 있다. 내 비밀번호는 중요한 개인정보이기 때문에 서버는 그대로 저장하지 않고 암호화 작업을 거친 후 저장한다. 이 때 hash 함수가 사용된다. 원본 메세지를 알면 digest는 알 수 있음 하지만 digest를 알아도 원본 메세지는 알 수 없음 하지만 hash 함수도 결국 dig... 인가bcryptBackendPayloadJWT인증TokenhttpBackend [Back-end] N+1 문제 N+1은 JPA(Java Persistence API)를 사용하면서 연관관계를 맺는 엔티티를 사용한다면 한번 쯤 부딪힐 수 있는 문제이다. N+1문제 발생 시 성능에 큰 영향을 줄 수 있다. N+1 문제 연관 관계에서 발생하는 이슈로 연관 관계가 설정된 엔티티를 조회할 경우에 조회된 데이터의 개수만큼 연관 관계의 조회 쿼리가 추가로 발생하여 데이터를 읽어오게 된다. 이것을 N+1 문제라고 부... BackendBackend [python 기초] Code-kata week2-5 🖥 Code-kata week2-5 문제 인자인 height는 숫자로 이루어진 배열입니다.그래프로 생각한다면 y축의 값이고, 높이 값을 갖고 있습니다. 아래의 그래프라면 height 배열은 [1, 8, 6, 2, 5, 4, 8, 3, 7] 입니다. 저 그래프에 물을 담는다고 생각하고, 물을 담을 수 있는 가장 넓은 면적의 값을 반환해주세요. 풀이 사실 이 문제는, code kata 시간 때 ... pythonBackendbrute forceBackend Domain 그것은 인터넷에서 사용할 수 있는 모든 웹 서버에 대해 사람이 읽을 수 있는 주소를 제공합니다. 인터넷에 연결된 모든 컴퓨터는 IP 주소, 즉 IPv4 주소(예: 173.194.121.32) 또는 IPv6 주소(예: 2027:0da8:8b73:0000:0000:8a2e:0370:1337)를 통해 연결할 수 있습니다. 이러한 모든 문제를 해결하기 위해 우리는 '도메인 이름'이라는 사람이 읽을 ... damainBackendroadmapBackend HTTP란? 세번째. HTTP/0.9은 단순히 HTML 응답용으로만 설계된 것과는 달리 HTTP/1.0은 이미지, 비디오 파일, 일반 텍스트 또는 기타 콘텐츠와 같은 다른 응답 형식도 처리할 수 있습니다. HTTP/0.9는 헤더가 없었기 때문에 이러한 정보를 보낼 수 없었습니다. 이 버전에서 요청 및 응답 헤더는 여전히 'ASCII'로 인코딩된 상태로 유지되었지만 응답 본문은 이미지, 비디오, HTML, 일반 텍... roadmapBackendhttpBackend HTTP의 구조 및 핵심 요소 HTTP 핵심요소 HTTP 구조 자주 사용되는 HTTP 메소드와 Status Code HTTP HTTP 요청과 응답 이 경우 HTTP 요청은 "/ping" 주소에 GET 요청을 보내는 것이고, 추가로, 이러한 stateless란 특징 때문에 예를 들어 HTTP 요청을 처리하기 위해서는 해당 사용자가 로기인이 되어 있어야 한다고 할 때, 새로 보내는 HTTP 통신에서는 해당 사용자가 그 전 H... BackendBackend [Mysql] json으로 데이터 받아오기 위와 같이 구성된 Nutritions 테이블에서 fat부터 caffein까지 칼럼들을 data안, nutritionsInfo 안 json형식으로 가져오고 싶습니다. 이렇게 가져오면 됩니다. 1️⃣ 1개의 테이블에서만 만들기 (join이 필요없는 경우) 2️⃣ 여러개의 테이블을 합쳐서 만드는 경우(join 필요한 경우)... mysql쿼리문정리BackendBackend [Mysql] 배열로 받아오기 products.Id, products.name, categories.name, image_urls.url을 셀렉트하였다고 가정해보았습니다. 이 데이터가 이상해보이는 이유는 imageUrl이 3개 인 바나나가 데이터가 3번 나타났기 때문입니다. imageUrl을 배열로 묶으면 해결 될 것입니다. 배열을 만드는 부분만 작성해보았습니다. 일반적인 형식 조건을 여러개 붙일 때 주의해야할 점이 있습... mysql쿼리문정리BackendBackend [HTTP] http에 대하여 - 인증/인가 (2) http 인증/인가 🔐 django에서 인증/인가 (bcrypt, JWT) 를 구현하는 방법과, 인증/인가 간단 summary 이 때 비밀번호는 암호화해서 저장 (bcrypt 사용) 인가, Authorization: 사용자의 접근 권한을 확인하는 과정 (즉, 이 사용자가 request를 요청할 권한이 있는가를 판단) 그래서, django로 API를 구현할 때, 사용자의 비밀번호를 전달 받으면... authorizationdjangoBackendauthenticationTokenhttpBackend API 개발 API 실행 장고와 같은 다른 파이썬 웹 프레임워크들은 여러 모듈과 기능들을 제공하느라, 프레임워크 자체가 무겁고, learning curve가 높을 수 있지만, flask는 비교적 쉽게 배워서 사용할 수 있으므로 API 개발 입문용으로 사용하기에 적합한 프레임워크이다. 즉, Flask와 같은 웹 프레임워크를 사용하믕로써 개발자는 웹 시스템을 통해 제공하고자 하는 비즈니스 로직에만 집중할 수... BackendBackend day08 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다. 연결된 애플리케이션과 함께 데이터와 DBMS를 하나로 묵어 데이터베이스 시스템이라고 한다. 둘은 우선 용어부터 다르다. 데이터베이스를 저장할 데이터를 작성 방식으로 구분하는데 관계형은 관계를 중시하며 데이터의 중복을 피하기 위해 여러 테이블로 나누어 저장한다. 문서형은 이와 반대로 다른 구조의 데이터를 같은 컬... expressnodejsBackendBackend Miniter API 개발하기 다른 회원 팔로우 jsonify 모듈 : request를 통해 사용자가 HTTP를 통해 전송한 JSON를 읽고, api내부의 dictionary 객체를 JSON으로 변환하여 HTTP 응답으로 보낼 수 있음 메인 기능 중 하나인 300자 제한 트윗 (tweet) 글 올리기 엔드포인트 (endpoint)를 구현 사용자가 300자 이내의 글을 전송하면 endpoint는 사용자의 글을 저장하고 있으... BackendBackend 해시를 만드는 함수 해시를 만드는 함수와 해시를 검증하는 함수를 만들기 위해서는 아래의 모듈을 설치해주어야합니다! 모델 메서드는 모델에서 바로 사용할수 있는 함수를 말해요! 모델 메서드는 두가지 종류가 있습니다. 인스턴스 메서드 = 인스턴스(할당된 부분)에서 사용 가능 함수 스태틱 메서드 = 모델에서 바로 사용할 수 있는 함수... hashBackendBackend ☁️ BE TIL Day 13 0330 Method that was used in apollo-server Need to create swagger typeDef is created automatically Thus, the docs are created automatically by using resolver. => It gets the types from resolver file. No need to write schema o... DatabasegraphqlBackendApollo clientdbeaverApollo client [Fastapi] object 분석하기(FastAPI, APIRouter, ...) 예시 코드를 먼저 확인해봅시다. 1. FastAPI Class app 인스턴스 선언 FastAPI object이자 API를 위한 모든 기능을 제공함 APIRouter api_router 인스턴스 선언 API endpoint들을 grouping app.include_router 메소드로 app 인스턴스에 api_router를 등록(register) 왜 FastAPI랑 APIRouter가 분리되... FastAPIBackendBackend wsl2에 mysql설치하기 이전에 만들어둔 ERD를 통해 DB설계를 간단하게 하고, 로컬로 DB서버를 열어 확인하려던 순간 에러가 발생했다. 이유는 즉, WSL2을 통해 VSCODE를 사용하기에 WSL2환경에서 켜진 DB서버를 찾았는데 MYSQL은 윈도우에 깔려있었다. 해결책은 2가지이다. WSL2의 일부 포트 방화벽을 허용해서 윈도우와 연결을 하는 방법(비추, 굳이 방화벽을 열고 허용하고 설정하는 것은 시간이 오래걸... mysqlWSL2dbBackendBackend 백엔드 초기 세팅하기 타입스크립트 기반의 nodejs 백엔드 초기 세팅 DBeaver 다운로드 - 플러그모양눌러서 postgreSQL 연결하기 typeORM 설치 package.json은 자동으로 설치 되지만, 안된다면 만들어줄것 타입스크립트 설치 tsconfig.json 파일을 만들기 [https://www.typescriptlang.org/] 이 사이트에서 what is config.json vscode에 백... dbBackendBackend [http] REST API software 아키텍처 - REST REST - Representational State Transfer 는 정확히는 아키텍처 원리를 의미하는데, (REST 외에 SOAP, Graphql, GRPC 등이 있다) 프로젝트를 진행할 때 다양한 step이 존재하고, 어느 정도 API 구현이 완료되면 프론트와 논의하여 uri를 포함, headers, 상태코드 등을 작성하게 된다. 응답: 200,2... APIRESTpath parameterBackendquery parameterhttpAPI [Backend]FastAPI 입문 2 : db(데이터베이스) GET,POST 및 Swagger UI data validation(유효성 검사)을 위한 python library 내장 라이브러리이므로 별도 설치가 필요 없음 -data validation : 데이터가 정확하고 유용한지 확인하기 위해 데이터 정제를 거쳤는지 확인하는 프로세스 새로운 언어를 익힐 필요 없다(IDE에서 쉽게 활용 가능) Customizing이 가능하다. 빠르고 python data class랑 부합한다. 우리는 이 ... 데이터베이스FastAPIdbBackendPydanticBackend 스마트 해상물류 - web 개발 해당 스마트 해상물류 프로젝트에서 겪은 오류나 느낀 점들을 기록해두도록 하겠다. 먼저 해당 프로젝트는 주로 python을 기반으로 프로젝트를 진행하므로 웹 프레임워크로 django를 선택하였다. 작년에 한이음 프로젝트를 하며 제공받았던 스파르타 코딩 클럽의 django 강의 교안을 참고하며 프로젝트 웹사이트 데모를 제작하였다. 진행 과정 데모 사이트 제작이므로 간단히 로그인 기능과 index... dbdjango스마트해상물류 멘토링Backendsparta codingBackend [Back-end] OpenID OpenID Connect는 권한부여 서버에 의해 작동하는 인증시스템을 기반으로 클라이언트가 사용자를 판단할 수 있게 해준다. ID 토큰을 얻은 후에 클라이언트는 payload 부분에 인코드된 사용자 정보를 얻을지 결정할 수 있다. 클라이언트는 이런 정보를 이용해 사용자를 인증할 수 있다. 클라이언트가 더 많은 사용자 정보를 원한다면, 클라이언트는 표준 OpenID Connect 스코프에 더... BackendBackend ☀️ BE TIL Day 17 0405 ⬇️ Main Note 🌿 Type settings isSoldout is in a boolean type, which the default value is written as false. When isSoldout changes into true, then the user cannot edit the product. 🌿 Entity Query Settings ⬇️ command shortc... APIDatabaseCRUD APIBackenddockerdbeaverAPI ☀️ BE TIL Day 16 0404 ⬇️ Main Note 🌿 Basic ↘️ Starting the SQL inside the database ↘️ Joining two tables with id ↘️ When yiu write update tattoo set name='myFirstTattoo'; => Error occurs like this. So, there should be a condition for the code... mysqlDatabaseBackendsqltypeOrmentityBackend Nestjs 폴더 구조 우선 nestjs를 다운 받아보자. 이때 npx라는 것으로도 nest를 다운 받을 수 있다. npx? npm 5.2.0 버전부터 새로 추가된 도구로 일회성 명령으로 패키지를 사용할 수 있도록 해준다. 참조: 앞서 말한 대로 nestjs를 설치하면 어떠한 package manager를 사용할 지 물어본다. yarn을 주로 사용하니 yarn을 선택해보도록 하겠다. 이러한 감사메시지와 함께 tes... NestJSnodejsBackendBackend