2022-03-26(TIL)

황인호·2022년 6월 7일
0

TIL 모음

목록 보기
12/119
  • 오늘해야하는일들
  1. 샘플코드 보고 express 및 웹페이지 생성
  2. CS스터디 강의 Chapter 14 질문하나 준비하기 (완료)
  3. 운동

⇒ 턱걸이 30개 // 팔굽혀펴기 150개

  1. CODE 독서하기 Chapter 15 읽기

★ 오늘 알게된 사실 ①

코드를 작성하면서 계속 궁금했다 res.render

render란 무엇일까??

렌더링이란 ⇒ HTML,CSS,JavaScript등 개발자가 작성한 문서를 브라우저에서 그래픽 형태로 출력하는 과정을 말한다.

https://boxfoxs.tistory.com/408

위에 링크를 참조하면 더 좋다

★ 오늘 알게된 사실 ②

스키마 정의

https://mongoosejs.com/docs/guide.html

몽구스의 모든 것은 스키마로 시작합니다.

각 스키마는 MongoDB 컬렉션에 매핑되고 해당 컬렉션 내 문서의 모양을 정의합니다. (아래의 코드가 몽고DB 컬렉션과 매핑하는 코드이다.)

const mongoose = require('mongoose')
const {Schema} = mongoose

const blog(사용자가 지정한 변수)Schema = new Schema({
	title : String, (사용자가 몽고DB에 저장하고싶은 항목?)
	author: String,
	body: String,
	comment:[{body: String, date: Date}],
	date: {type: Date, default: Date.now},
});

★ 오늘 알게된 사실 ③

모델 만들기

스키마 정의를 사용하려면 작업할 수(blogSchema)있는 모델로 변환해야 합니다.

module.exports = mongoose.model('Blog', blogSchema);

오류 해결 노트

몽고DB 연결할때 쓸것

const mongoose = require ("mongoose");
const connect = () => {
    mongoose
      .connect("mongodb://localhost:27017/post_list",{ ignoreUndefined: true })
      .catch(err => console.log(err));
  };
  mongoose.connection.on("error", err => {
    console.error("몽고디비 연결 에러", err);
  });
  module.exports = connect;

★ 오늘 알게된 사실 ④

GET method ⇒ GET방식의 요청에서 파라미터를 전송하는 방법은 두 가지가 있다.

쿼리스트링(QueryString)이나 경로(Path)를 통하여 파라미터를 전달할 수 있다.

  • QueryString ⇒ req.params( )을 이용하여 쿼리스트링을 통해 요청된 파라미터를 받아낼수 있다.
app.get('/user', function(req, res) {
	const u_name = req.param('name');
	const u_age = req.param('age');

	res.send("User Name : " + u_name + "/User Age : " + u_age);
});

쿼리스트링의 id는 name과 age로 하여 보내고자 하는 데이터를 서버에 요청하자.

http://localhost:3000/user?name=kin&age=20’로 페이지 요청을 해보면 다음과 같다.

Untitled

  • Path ⇒ req.param( )을 이용하여 파라미터를 받을 수 있지만 ‘req.params’를 이용하는것이 더욱 바람직하다.

req.params 는 json객체로 데이터에 접근하는 key는 라우팅할 때 ‘/:key’형식으로 지정이 가능하다.

전달하고자 하는 데이터(value)는 경로에 맞는 위치에 입력하여 요청하면 된다.

app.get('/user/:name/:age', function(req, res) {
	const params = req.params
	console.log(params)

	res.send("User Name : " + params.name + "/User Age : " + params.age);
});

req.params 객체의 key는 name과 age로 지정하였고 params의 데이터 형식을 알아보기 위해 콘솔에 찍어보았다.

이제 데이터를 경로에 맞는 위치에 입력하여 전송해보자.

http://localhost:3000/user/kim/20’로 페이지 요청을 보내면 다음과 같이 나타난다.

Untitled

아래의 코드를 참고하면 정말 자세하게 나와있다!

https://gongbu-ing.tistory.com/26

https://luckyyowu.tistory.com/346

profile
성장중인 백엔드 개발자!!

0개의 댓글