CP

해피데빙·2022년 9월 30일
0
  • 2일차에 적어놓은대로 하는데 dns부분에서 걸림
  • dns가 cors의 조건 때문에 설정한 건데 여기서 dns는 everytime이 campuspick로 바뀜
  • 그러므로 설정을 해놓은 dns가 없으니까 https://nakyoung.campuspick.kr는 안됨
  • https://nakyoung.everytime.kr:port는 서버와 연결 없이는 돌아감(cors에서 걸린)
  1. server, fe 모두 everytime으로 cors의 origin 조건 변경
  • 그래도 안됨
  • 이유 : 데이터베이스와 연결이 안되어서??
  1. routers/page/index.js
    경로 따라 요청과 함께 들어오는 params 받아서 쿼리문으로 들어온 값에 따라 정보 정리해서
    handler.renderEjs통해 필요한 css, js, data 전송

router.all('page/qna$', function(req, res, done){
var params = req.extendParams;
//page/qna?category=etc
//params = {category:etc}식으로 들어간다

어떤 값이 쿼리 뒤에 왔는지에 따라서 categoryName(여기에 문의하기 넣고), placeholder(여기에 과제를 넣어야한다), agreement가 오는지 정의

handler.renderEjs(req, res, {
name: "pages/qna",
title: categoryName,
stylesheets,
scripts,
user,
appInfo,
params,
...,
data: {
categoryName,
placeholder,
agreement,
...
}
})
})

  1. routers/handler.js
    exports.renderEjs = function(req, res, options){
    options.req = {
    //req에서 받은 쿠키
    //req에서 넘겨주는 오리지널 url
    //req에서 넘겨주는 req.path
    }
    //config에서 정해준 서버 url

res.render(options.name, options)
//res.render는 앞의 경로에 있는 파일에 options로 들어온 값을 지역 변수로 넘겨서 render한다
//여기서는 index.js에서 넘겨준 Pages/qna

}

  1. views_ejs/pages/qna.ejs
    이 페이지에다 options로 넘겨주고 있는 값을 보여준다
    header, footer를 가져온 뒤
  • categoryName
  • data.placeholder
  • data.isAttachable
  • data.agreement
profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글