현재 두개의 시크릿키 client 와 frontSecret 키들이 있잖아요. 1. clinentSecret 키는 서버간의 인증을 위한 키 frontSecret키는 프론트에서 서버로 보내줄때 인증을 위한키 보안상의 이유로 클라이언트 키가 프론트에서 보이는 것 보다 프론트 키가 프론트에서 보이는 걸 선호하는 이유가, 프론트키 와 유저가 직접입력한 도메인을 알아야 기에 좀 더 안전해서 프론트 키를 쓴다. 지금 제가 이해 한게 맞나요? 2. 현재 프론트에서 보내는 프론트 키 + 도메인으로 토큰을 발급 받을때요. localhost:8003/ 을 입렵하면, 라우터 / 이거 에서 frontSecret 키를 main.pug 로보내고, main.pug는 다시 locallhost:8002/v2/token 으로 보낸후, 이 라우터 안에서 DB에 제대로 유저가 등록한 도메인으로 요청을 했는지, where: { host: url.parse(req.get('origin')).host } 로 DB 체크후 CORS로 넘겨진후.. /token 라우터로 가서, 보내준 frontKey가 맞는지 체크하고 토큰을 발급을 해주잖아요. 그래서 /token 라우터 코드를 const { frontSecret } = req.body; 프론트키받고 where: { frontSecret } 이런식으로 DB에서 체크후 DB에 프론트키가 있는지 여부를 보고, 토큰을 발행해주나요. 그렇다면, 이전에 clientSeceret 키로 주고 받았잔아요. 예를 들면, nodebird-call 을 보시면, request 함수에, const URL = 'http://localhost:8002/v2' ; const request = async ( req , api ) => { try { if (! req . session . jwt ) { const tokenResult = await axios . post ( ` ${ URL } /token` , { clientSecret: process . env . CLIENT_SECRET , }); .......} 이런식으로 axios를 통해서 http://localhost:8002/v2/token 에다가, clientSecret을 보내고, 위와 같은 흐름으로 client 키를 통해서 v2.js 에서 도메인도 체크하고난후, /token 라우터를 통해서, const { frontSecret } = req.body; 프론트키받고 where: { frontSecret } 이런식으로 DB에서 체크후 체크를 하는데 , 문제는 frontSecret을 받으려고하잖아요. 이럴경우는 clientSecret을 따로 받을 수 있게, v2-1.js 이런식으로 새로 만들고, 아예 http://localhost:8002/v2-1/token 이런식으로 요청을 받을수 있게 하는게 나은가요 ?? 3. 그리고, 만약에 clientSecret만 으로 토큰을 받는다면, 도메인 체크는 할 필요가 없어지는게 맞죠? 애초에 프론트에 나오지 않아 해킹에 위험이 적어지니까요.
강의 잘 들었습니다. 궁금한 점이 생겼는데, vuecli를 사용하다 보니 여러가지 모듈들이 같이 설치 되는 것 같던데, 이것들을 다 가져가서 django랑 연동 하는지 의문이네요.. 아니면 vuecli를 쓰지않고 그냥 vue.js cdn 파일만 가져가는지.. 아직 모르겠네요. 현재는 조그만한 풀스택 개발이 목표거든요. 백엔드를 django로 생각하고 있거든요. django 템플레이트에서 변수를 불러 올 때에도 수염괄호쓰는데 방법은 있는걸로 알고 있는데, django랑 vue 같이 사용하면 좋은지.. 두서없이 말씀드렸는데, 정리하겠습니다. 1. 첫번째로 django랑 vue랑 같이 사용하면 좋은가 궁금합니다. - 템플릿에서 수염괄호가 django에서 사용 되고 있어서.. 2. 소규모의 개발에서 캡틴판교강사님의 생각에 vue에 잘 어울리는 백엔드는 무엇인지도 궁금합니다. 3. 만약에 django를 연동한다고 하면, vuecli를 연동하는지 아니면, cdn에서 vue.js를 가져와서 연동하는지?
constructor(bytes32[] => candidateNames)를 하면 Data location must be "memory" for parameter in function, but none was given. 이라고 되어 있어서 빨갛게 줄이 쳐져있습니다. 어떻게 해결하면 될까요?
선생님 안녕하세요! 제가 파이어베이스랑 앱을 연동할때, 모든 단계를 끝내고 '앱을 실행하여 설치 확인' 단계에 접어들었는데, 계속 로딩중이길래, 에뮬레이터를 종료하기 다시 시작하니 아래와 같은 오류가 떴어요 ㅠㅠㅠ 빌드에 실패했다는데.. 어디를 수정해야할까요?!!?! 도와주세요ㅠㅠㅠ 버전을 높이면 와전 다른 에러 메세지가 떠서, 일단 안 고치고 놔뒀어요!
정규표현식 매칭해주는 사이트 이용해서 https와 http를 다 포함하는 것을 만들어 볼려고 별 짓을 다 해도, 두개가 동시에 포함되는 표현식은 어려운 것 같습니다.. ''' (http)\w\:\/\/ ''' 제가 만든건 이게 최선이네요ㅠㅠ 혹시 select와 select_one의 차이점이 뭔가요? 여기서 여차피 하나만 찾으시는데, 왜 select_one이 아니라 Select를 사용하신지 궁금합니다.
안녕하세요. 현재 어느정도 진행이 되어진 파이썬 + 장고 프로젝트에적용하려 합니다. 장고 프레임워크라서 .vue 파일을 이용한 순수 뷰 프로젝트 구조를 사용을 못하고 있습니다. (혹은 방법을 아직 모르겠네요) 그래서 현재 .js 파일로 vue를 작성 중에 있는데요. 기존 완성된 하나의 웹 페이지인 HTML 파일에 html 코드로 작성된 header, body, footer들을 vue 컴포넌트 별로 분류를 하려 합니다. 그래서 최상위(?) 뷰 인스턴스 하나에 components 들을 각각 app-header, app-content, app-footer 들로 등록을 해주려는데요. .js 파일에 각 component를 선언한 객체에 template에다가 그 긴 HTML 코드들을 javscript 언어로 작성해서 제어해 주는 방법 밖에 없을까요~? ex) let appHeader = { template: '<div id="header">header</div>', props: ['propsdata'] }; let appFooter = { template: '<div id="footer">footer</div>' props: ['propsdata'] }; let app = new Vue({ el: '#app', components: { 'app-header': appHeader, 'app-footer': appFooter } }); 위 예시에 appHeader, appFooter 의 template 는 짧지만 현재 제 프로젝트에는 HTML 코드로 작성된 header와 footer 는 이미 수 많은 element 들로 작성된 코드가 있는데요. 그걸 .js 파일안에 있는 appHeader, appFooter 객체에 있는 template 에다가 javascript 코드로 적는 방법 밖에 없는지 해서요.. 혹시나 다른 방법이 없을까요!?