로그인 후, 우측 상단에서 "VIEW API KEY" 클릭
API KEY 발급 후 사용하면 됨.
API 키는 그대로 프론트엔드에서 사용 할 경우,
여러 사람에게 노출될 수 있다.
.env 로 가져와도 마찬가지..
그래서 아래와 같이 키 두개를 사용해서 백엔드와
프론트엔드, 그리고 서버와 연결하면 key 를 숨길 수 있다.
openAI <> backend
backend <> frontend
백엔드에서 키 두개를 가지고 관리해주면 됨.
fly.io 로 backend 배포
vercel 로 frontend 배포
링크만 알고있다면 누구나 사용가능.
Frontend 에서 content 값 입력,
deploy 한 backend 주소로 post 요청, 이 과정에서 bearer token 값과 같이 backend 로 보냄.
backend 에서는 bearer token 값이 일치하는지 확인 후, OpenAI GPT API 이용해서 content 값을 보내고 결과 값을 받아옴.
결과 값을 frontend 로 보내줌.
그래서 아래와 같이 코드를 짜주면,
console.log(req.headers.authorization?.substring(7));
req.headers.authorization 이 부분이 비어있다면?
? 뒤의 substring(7) 은 실행하지 않는다.
그래서 옵셔널 체이닝
즉, 있는지 없는지 확인하고 뒤의 코드와 연결해주는 것이라고 생각하면 되겠다.