Programming (32) 썸네일형 리스트형 웹훅(Webhook)이란 무엇인가? 웹훅(Webhook)이란 무엇인가? 엇!? 웹훅이라는게 있었어? 내가 처음 들었을때 느낌이다. 훅을 걸다? 정도의 느낌으로 주기적으로 서버에서 함수를 실행 시킨다거나 일정한 동작이나 작업이 웹훅인가 했다. 웹훅의 정의를 찾다가 참고한 글에 이렇게 나와있다. A webhook (also called a web callback or HTTP push API) is a way for an app to provide other applications with real-time information. 쉽게 말해서 웹훅은 http 의 push API 를 활용해서 데이터를 전달하는 방식 중 하나이다. 새로운 데이터가 추가 되거나 기존의 데이터의 업데이트, 또는 보내고자 하는 데이터를 해당 정보를 받거나 받아야 하는 .. Nodejs 비밀번호 암호화 요즘에는 소셜 로그인을 많이 하기 때문에 비밀빈호가 전혀 필요하지 않는 경우가 많다. 비밀번호가 필요한 경우, 일반적으로 본인 외 누구도 알아서는 안되는 코드이기 때문에 암호화가 기본이다. 이번에는 가장 많이 쓰이는 단방향 암호화를 통해 비밀번호를 아주 비밀스럽게 만드는 방법을 코드로 알아보자. import { pbkdf2Sync, randomBytes } from 'node:crypto'; const encryptPassword = (password) => { const salt = randomBytes(64).toString('base64'); // random salt 생성 const iteration = 100000; // 해시 함수 반복 수 const keylen = 64; // 암호화 된 비밀.. Nodejs + Express + Typescript 프로젝트 세팅 필요 선행 작업 $ npm i -g yarn $ npm i -g typescript *** 만약 git 이 설치되어 있지 않다면, 아래 명령어 실행 $ brew install git 프로젝트 생성 프로젝트를 시작할 폴더를 생성 후 해당 폴더 내에서 아래 명령어 실행 $ yarn init -y $ tsc --init $ git init 라이브러리 추가 Express, nodemon, typescript 설치 $ yarn add express $ yarn add -D @types/express @types/node ts-node typescript nodemon tsconfig.json 설정 tsc --init 명령으로 파일이 생성되었을 것이다. 해당 config 에 typescript 컴파일 옵션을 추가한.. Nodejs 로 텍스트 파일 가져오기 node v18 텍스트 파일을 읽기 위해 nodejs 에서는 readFile, readFileSync 가 있다. 1. async/await readFile import { readFile } from 'node:fs/promises'; const path = 'YOUR_TEXT_FILE_PATH'; try { const text = await readFile(path, 'utf8'); console.log(text); } catch (err) { console.log(err); } 2. Callback readFile import { readFile } from 'node:fs'; const path = 'YOUR_TEXT_FILE_PATH'; readFile(path, 'utf8', (err, data.. 유용한 HTML tag #1 1. 줄임말 또는 축약 형태의 특정 단어에 대한 도움말이 필요할 때 ㅈㅂㅈㅇ 2. 인용문을 사용할 때 신에게는 아직 12척의 배가 남아있습니다. 3. 하이라이트가 필요할 때 Live life as if there were no second chances. 4. 특정 항목의 정보를 사용자의 편의대로 보거나 숨겨야 할 때 HTML 이란? HTML(Hypertext Markup Language)은 웹 페이지와 그 내용을 구조화하기 위해 사용하는 코드입니다. 예를 들면, 컨텐트는 여러 개의 문단, 글 머리 목록이 구조화된 것이거나 사진이나 데이터 테이블일 수도 있습니다. Typescript 익숙해지기 익숙해 지는 과정 새로운 무언가에 익숙해 지기 위해서는 몇가지 해야할 사항들이 있다. 그 중에서 가장 어려운건 바로 지금의 익숙함을 내려놓아야 한다는 것이다. 바닐라 자바스크립트로 개발을 할 때보다 타입스크립트를 사용할 때 계속 들었던 생각은, 굳이.. 굳이.. 타입스크립트를 써야하는가... 였다. 많은 개발자들이 타입스크립트로 개발을 하고 협업을 한다. 그렇기 때문에 나도 타입스크립트에 익숙해져야 한다고 생각했다. 하지만 중요한건 타입스크립트를 써야하는 이유를 찾아야 즐겁게 재밌게 개발을 할 수 있지 않을까 생각이 들었다. 아, 이거구나! 리액트로 프론트 작업을 하는 중에 셀렉트 옵션을 주는데 개발자 답지 않게 열심히 하드코딩을 하고 있는 나를 발견했다. 내가 이걸 지금 왜 쓰고 있지... ㅎㅎ 바로 .. Django - Json Data Response Server / CORS control How to response to GET request 장고에서 데이터를 json 형태로 내려줄때 두가지 방법을 활용할 수 있다. HttpResponse 와 JsonResponse 를 활용해보자. 1. HttpResponse 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 # myproject/views.py import json from django.http import HttpResponse def responseData(request): fakeData = [ {'name': 'Daniel', 'age': 24}, {'name': 'David', 'age': 18}, {'name': 'Peter', 'age': 32} ] return HttpResponse(json.dumps(fak.. Django - Install mysqlclient on Mac, #3 사실 아직 명확히 어떤 이유와 에러의 의미는 이해하지 못했으나 장고 서버를 설치 후 mysqlclient 를 인스톨 하면 무지막지한 에러를 뱉어낸다. virtual environment 가 activate 되어 있는지 확인한다. $ pipenv install mysqlclient >>> ERROR 맥OS 환경과 파이썬 버전, 그리고 설치되어지는 mysqlclient 의 버전에 따라 문제가 발생하는 듯 하다. 구글링과 여러 블로그를 돌아다니면서 확인한 결과, openssl 사용해서 인스톨을 진행하면 문제없이 설치가 진행된다. 보통 맥OS 의 경우에 openssl 이 설치 되어 있을 수 있다. 그럼 에러를 해결해 보자. $ brew install openssl $ LDFLAGS=-L/usr/local/opt.. 이전 1 2 3 4 다음