분류 전체보기 170

[ WEB ] - 프로토콜 / 이더넷

프로토콜이란? 프로토콜은 원활한 통신을 위해 어떠한 식으로 데이터를 주고 받고, 요청하는지를 정해 놓은 일종의 규약을 의미합니다. 대표적인 프로토콜로는 애플리케이션 레이어 프로토콜의 일종인 HTTP와 SMTP가 존재합니다. TCP / IP 프로토콜 스택 * 프로토콜 스택이란 계층화된 프로토콜의 집단들을 의미합니다. 물리 계층의 이더넷 + 데이터가 목적지까지 도달하도록 돕는 네트워크 계층 + 쪼개진 패킷을 데이터 형태로 조합하는 전송 계층과 애플리케이션 계층 OSI 7계층 TCP / IP 모델 대표 프로토콜 응용 계층, 응용 계층 HTTP, SSH, FTP, DNS, SMTP, SNTP 표현 계층 세션 계층 전송 계층 전송 계층 TCP, UDP 네트워크 계층 인터넷 IP 데이터 링크 계층 네트워크 접속 E..

이론 2022.05.23

[ Javascript ] - 기본 함수

1. concat( ) 여러 배열을 합쳐서 새로운 배열을 반환해주는 함수이다. const arr1 = ["a", "b", "c"]; const arr2 = ["d", "e", "f"]; const arr3 = arr1.concat(arr2, 'g'); console.log(arr3); // [ 'a', 'b', 'c', 'd', 'e', 'f', 'g' ] const str1 = 'hello'; const str2 = 'world'; console.log(str1.concat(" ",str2)); // 이와 같이 string을 붙이는 것도 가능하다. 2. push( ) 배열의 끝에 새로운 요소를 추가하고, 요소가 추가된 전체 배열을 반환한다. const arr1 = ['apple', 'mango']; c..

Javascript/etc 2022.05.22

[ AWS ] - Apprunner 사용하여 배포하기

배포할 repository 주소 https://github.com/miheeOh/react_new aws 계정은 존재한다고 가정 1. app runner를 검색합니다. 2.App Runner 서비스 생성을 클릭합니다. 3. 기존에 연결된 git 저장소가 없는 경우, 새로 추가를 클릭하고 github 계정을 연결합니다. 리포지토리 칸은 배포하려는 리포지토리를 선택합니다. 브랜치 칸은 배포하려는 브랜치를 선택합니다. 앞으로 main 브랜치에 변경된 내용을 push하게 되면 배포된 사이트에 main 브랜치의 변경된 내용이 반영됩니다. 배포 설정의 경우 위에서 설정한 브랜치에 push되면 자동으로 배포되도록 자동을 선택합니다. 모든 설정이 완료된 경우 다음을 클릭합니다. 4. 빌드 구성 부분에서 리포지토리에 배..

AWS 2022.05.21

[ solidity - 기본 형식 ]

☃️ 솔리디티 기본 문법 1. 버전 명시 Pragma 솔리디티는 버전업이 매우 빠르기 때문에 솔리디티 코드 작성시 최상단에 컴파일러의 버전을 명시해준다. // SPDX-License-Identifier: MIT => 관련된 라이센스가 존재하는 경우 추가적으로 명시해준다. // SPDX-License-Identifier: MIT pragma solidity ^0.8; 2. 참조 import 다른 컨트랙트를 불러와 사용하는 경우 작성한다. // SPDX-License-Identifier: MIT pargma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; 3. 컨트랙트 contract // SPDC-License-Identif..

Solidity 2022.05.20

[ 자바스크립트 ] - some ( )

/* arr.some(조건[currentValue, index, array]) ================================================== index와 array는 optional */ const array = [1,2,3,4,5]; const even = (ele) => ele % 2 === 0; console.log(array.some(even)); // true 출력 // 배열 요소 중 하나라도 해당 조건을 충족하면 true 출력 const array2 = [1,3,5,7,9]; const even2 = (ele) => ele % 2 === 0; console.log(array2.some(even2)); // false 출력 // 배열 중 모든 요소가 조건을 충족하지 ..

Javascript/etc 2022.05.17

[ Node.js ] - swagger-ui

swagger API 관리 도구로써 개발자가 rest api 명세를 쉽게 문서화할 수 있도록 도와주는 도구. swagger-ui restapi를 html로 구현하여 보여줌. swagger-ui 세팅 > npm install swagger-ui-express --save-dev > npm install swagger-jsdoc --save-dev - servers의 url에는 작성된 스웨거 문서를 통해 테스트로 보낼 ip 주소를 적는다. - apis는 swagger를 작성한 파일 위치에 대한 정보를 제공하는 곳이다. apis에 작성된 경로를 읽어서 해당 경로에 위치한 파일에 작성된 스웨거 문서를 읽는다. 아래의 코드는 타입스크립트로 작성되어 빌드 후 스웨거 문서가 존재하는 build폴더에 컴파일된 js파일..

Javascript/Node.js 2022.04.05

[ AWS ] - ec2 이용하여 배포하기

가정 : aws의 계정이 존재하고 로그인이 되어있음을 전제하였다. 1. 콘솔에 ec2를 입력 후 EC2 클라우드의 가상 서버라고 되어 있는 것을 클릭한다. 2. 지역은 서울(ap-northeast-2)로 한 후, 왼쪽의 카테고리 목록에서 인스턴스-인스턴스를 클릭한다. // 지역은 달라져도 큰 상관없다. 하지만 해당 서버가 실제 이용되는 지역으로 설정하는 것이 좋다. 3. 우측 상단의 인스턴스 시작을 클릭한다. 4. 이름에는 해당 인스턴스 구분명을 적고 애플리케이션 및 OS 이미지에서는 Ubuntu를 선택하고, 나머지는 기본값을 그대로 둔 후 인스턴스 시작을 클릭한다. 5. 아래와 같은 창이 나오면 해당 키페어 이름을 적고, 나머지는 기본값 그대로 한 후 키 페어 생성을 클릭한다. 6. 이와 같이 되면 인..

AWS 2022.04.05

[ Node.js] - prisma

prisma 사용하기 아래의 명령어를 터미널에 입력한다. > npm install prisma --save -dev > npx prisma init npx prisma init 명령어를 통해 prisma 사용을 위한 기본 구조가 생성된다. 위와 같은 폴더트리가 생성된다. .env 파일의 내용을 수정해야 한다. 아래는 mysql 인 경우이다. DATABASE_URL="mysql://root:mysql비밀번호@localhost:3306/prisma1" // ex) mysql 비밀번호가 root이면 // DATABASE_URL="mysql://root:root@localhost:3306/prisma1" // DATABASE_URL="mysql://user:mysql비밀번호@localhost:mysql설정된po..

Javascript/Node.js 2022.04.05