전체 글

TIL & WIL

TIL 생활코딩 web2 javascript

객체 (쉬운버전) 객체는 순서가 없고 이름이 있는 정리정돈 상자다. 객체에 상속된 함수를 메소드 라고 한다. 객체는 중괄호를 사용한다. (난 여태껏 제이슨 형식인줄 알았음 ) 배열에서는 순서가 있기때문에 인덱스 라는 용어를 사용하여 나타내지만, 객체에서는 순서가 없다. 키와 값으로 나타낸다. 객체에는 데이터는 물론이고 배열을 담을수도있고 함수도 담을수도있다. 객체에 소속된 함수 = 메소드 객체에 소속된 변수 = 프로퍼티 라이브러리 vs 프레임워크 라이브러리 : 내가 만들고자 하는 프로그램들에 필요한 부품들이 되는 소프트웨어를 잘 정리정돈 해놓은, 재사용하기 쉽게 해놓은 소프트웨어. 내가만들고있는 프로그램에 사용하는 부품을 가져오는 느낌 프레임워크 : 우리고자 만들고자 하는 것이 있을때 그게 뭐냐에 따라서..

TIL & WIL

WIL 4week (작성중)

ORM mongoose는 현재 우리가 사용중인 javascript Framework다. 그리고 ORM과 유사한 개념인 ODM이다. ODM이란 Object Data Mapping의 약자이며, 코드구성이나 개발 편의성 측면에서 장점이 많다. 호환성이 없는 프로그래밍언어(javascript) Object와 MongoDB의 데이터를 Mapping하여 CRUD를 가능하게 한다! mongodb는 특성상 데이타에 대한 스키마가 없기 때문에 자유도가 높아서 유연하게 사용이 가능하지만 반대로 RDBMS에서 정의된 스키마나 명시적인 테이블 구조가 없기 때문에, 어떤 컬럼이 어떤 데이타 타입으로 있는지를 알기가 어렵다. 이러한 문제를 보완하기 위해서 mongoose는 스키마라는 개념을 사용한다. noSQL vs SQL

nodejs

ejs (html)로 유저정보 가져오기

핵심 : 함수 + GET + 미들웨어 사용하여서 라우터에서 유저정보를 빼서 ejs로 보내준다. getSelf 함수를 이용하는데 유저라우터와 유저스키마와 연결되어있고, getself 함수이용해서 method get 과 미들웨어를 거쳐오면서 유저정보를 ejs로 가져옴 function getSelf(callback) { $.ajax({ type: "GET", url: "/api/users/me", headers: { authorization: `Bearer ${localStorage.getItem("token")}`, }, success: function (response) { callback(response.user); }, error: function (xhr, status, error) { if (sta..

nodejs

router에서 유저정보 사용하기

핵심: 미들웨어 사용 = 미들웨어에서 유저정보를 빼서 라우터로 가져올 수 있음 미들웨어 사용하는게 이해가 안갔음 module.exports = (req, res, next) => { console.log("미들웨어를 지나가유"); // 미들웨어가 확실하게 호출이 되었고, 다음 핸들러가 호출되었다는것을 확신할 수 있음. const { authorization } = req.headers; console.log(authorization); // Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI2MTliZDk1Y 이런식으로 뜸 // 이것을 어떻게 하냐? 이 Bearer와 뒤에있는 데이터를 어떻게 가져옴?? > split 사용하자(공백스플릿) const ..

nodejs

location 객체 사용법만 !

예제 : URL = https://http://www.google.co.kr/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=html5 alert(window.location.hash); // "#q=html5" alert(window.location.host); // "www.google.co.kr" alert(window.location.hostname); // "www.google.co.kr" alert(window.location.href); // "https://www.google.co.kr/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=html5" alert(window.location.origi..

생각을 정리하는 글쓰기

월요일

월요일에는 뭔가 잘 안된다. 공부에도(의지에도) 월요병이라는게 있는건가?? 어차피 주중에 언젠가는 다시 리듬을 잡게 되는데 그 타이밍을 빨리 잡을수록 좋은 것 같다. 지난주에는 화요일,수요일정도에 리듬을 잡았다. 이번주는 월요일 오후 11시 정도에 다시 리듬을 잡았다고 생각함. 하루는 날아갔지만 다음주부터는 리듬을 잡는데에 집중해야 할 듯. 일주일 중에 월요일이 제일 중요한 날일수도 있겠슈; 일요일에도 평일처럼하면 월요병이라는게 없을까? > 일요일에도 해보면 되겠지 ㅇㅇ

생각을 정리하는 글쓰기

복붙도 실력이다.

복붙도 실력이다. 복붙이라고 해서 아무나 할 수 있는게 아니다. 복붙도 이해가 어느정도 되야 할 수 있는거다. 부끄러워 말라. 부끄러워 말자. 복붙도 실력이다. _김형진

nodejs

JWT 이해

JWT 특징 jwt는 변조가 불가능하다. ( =서버에서 원하는 데이터를 jwt로 암호화를 하면 서버가 아니면 다른 곳에서는 변조 불가능) 복호화는 어디서나 가능하다. 누구나 볼수 있다. 주민번호 패스워드 이런건 담으면 안되고, 사용자를 구분할 수 있는 정보만을 담는다. 사용자는 모든 api를 호출할 때마다 시리얼라이즈된 값를 가지고 사용자 : '나이거 가져왔어 나 이기능좀 해줘' 서버 : '오 이거 변조안됐네 유효하네 정상이네 알겠어' 이렇게 로그인api 구현하는 느낌 요약 : 서버에서는 클라이언트를 구분할 수 있는 고유한 정보를 담아서 토큰을 클라이언트한테 주고, 클라이언트는 api요청할 때 토큰을 포함해서 보내는느낌

nodejs

package.json 이해 _node.js

package.json 및 목적 node.js 현재 프로젝트에 대한 정보를 저장 및 제공한다. 주로 새로운 프로젝트를 시작하는 npm init 과정에서 자동생성한다. (직접 작성할 수도 있다.) 파일 내의 정보는 키-값 쌍으로 저장되는 단일 json 객체로 구성된다. 필수 입력해야하는 필드는 name, version이지만 후에 사용자 또는 관리자에게 최대한 정보를 제공해주는 것이 좋다. 그리고 현재 프로젝트에서 사용(의존)중인 패키지들의 버전을 기록한다. (의존성 관리) 프로젝트 및 npm 패키지에 대한 정보를 한눈에 담는다. 그리고 그 정보를 이 프로젝트에 연관된 작업자들이 함께 공유하고 업데이트하는 것이 목적이 아닐까 싶다. 개념 name name 과 version 을 통해서 패키지의 고유성을 판별하..

생각을 정리하는 글쓰기

음식사진, 영상을 조심하자!!

음식 사진, 안주 사진을 보지말자.... 특히 배고플 때 보면 이미 한상차려놓고 소주한병 놓고 먹는 상상한다.. 평소에는 식탐도 없고 사진, 영상만 안보면 한끼 거르는거 배고프지도 않은데 사진이나 영상 뭐 하나 보이면 바로 배고파짐. 특히 좋아하는 음식.. 뇌가 이상함..;; 근데 네이버에 만두 사진뜨면 내가 어떻게 할 수가 없잖아 만두 먹고싶다 ............ 방금 찐 뜨거운 김치 손만두.........엄마 김치만두............... 그.. 짜지 않은 김치만두에 너무 짜지 않게 간장 만든 다음에 베라 숟가락으로 엄마가 만든 김치만두에 간장 한숟가락 넣어서 한입에 넣기.......... 하...또 만두에....탄산도 잘 어울리는데...

deice
deice