환경변수가 어디서 쓰이는지 잘 모르겠습니다 ㅠ
770
投稿した質問数 13
전체적인 구조는 잘 설명해 주셔서 이해했습니다!
클라이언트 - 노드 서버 - dialogflow API
이렇게 되는데, 이번 강의에서 노드 라우트에서 보면
제가 dialogflow에서 만든 계정 정보(프로젝트 아이디 등등)를 가지고서 세션을 형성해서 연결하는 것까지 이해했습니다!
그래서 그 특정 정보를 가지고 제 계정으로 만들었던 dialogflow API로 보내게 되는 거구요!
그런데, GOOGLE_APPLICATION_CREDENTIALS 환경변수를 만들긴 했는데 이것이 어디에 쓰이는지 모르겠습니다... ㅠ
'프로젝트 이름-key.json' 라는 파일 안에는 제가 생성한 dialogflow 프로젝트 정보가 들어 있는데요, 이것이 있는 파일 경로를 이용해 일단 환경 변수를 셋팅했는데, 딱히 코드 상에서는 해당 환경 변수를 이용하는 곳이 없더라구요... ㅠ
그런데 서버를 돌리고 포스트맨으로 요청을 보내면 잘 응답이 오는 것을 확인할 수 있었습니다. 즉, 현재 노드 서버와 dialogflow API가 연결이 잘 됐다는 뜻인데요, 왜 이게 가능한지 모르겠습니다...
위에서 보시면 그저 프로젝트 이름하고, 임의로 정한 세션 아이디명을 넣어준 것 뿐인데, 어떻게 노드 서버가 제 dialogflow 프로젝트를 특정하여 잘 연결하는지 원리를 모르겠습니다...
回答 2
1
안녕하세요 ~ !
질문해주신것에 대한 답은
https://cloud.google.com/docs/authentication/production
여기 공식 문서에 나와있는데요 ~ !
우선 그 부분을 추려 보면
-
First, ADC checks to see if the environment variable
GOOGLE_APPLICATION_CREDENTIALSis set. If the variable is set, ADC uses the service account file that the variable points to. The next section describes how to set the environment variable. -
If the environment variable isn't set, ADC uses the default service account that Compute Engine, Google Kubernetes Engine, Cloud Run, App Engine, and Cloud Functions provide, for applications that run on those services.
-
If ADC can't use either of the above credentials, an error occurs.
이 부분이 될 것 같아요. Application Default Credentials (ADC)
요약을 해보면 저희가 저희 서버에서 Google Cloud 서버에 요청을 보낼때
Google 쪽에서는 저희의 Identity를 체크를 하는데요 체크 하므로써 quota 나 billing 을 확인 하고 Google Cloud APIs 를 접근 할수 있게도 해줍니다.
그래서 체크를 할떄는 ADC 라는 Application Default Credentials라는게 저희의 어플에 GOOGLE_APPLICATION_CREDENTIAL이 정의되어 있는것을 확인 한다고 합니다.
그래서 그래서 만약 확인이 잘되면 넘어가고 처음으로 확인이 되어 있지않으면 기본 service account를 확인하는데 그것으로도 확인이 안되면 에러를 준다고 합니다 ~ !
수고하세요 ~ !
0
반갑습니다!! 다름이아니라. 제가 오류가 나오고있어서 글을 보다가 인프론에 답을 달아주는 AI인턴에게 여기 페이지를 추천 받았습니다. 하지만 여전히 모르겠습니다.
혹시 괜찮으시면 링크는 아래와 같습니다. 가르침을 주실 수 있으실까요?
0
감사합니다!
windows에서 해당 환경 변수를 선언했는데,
결국 코드 상에서가 아니라 제 로컬에 있는
'프로젝트 이름-key.json' 파일 정보를 가지고서 원격에 있는 dialogflow API 구글 프로젝트를 추적한다고 이해하면 되는거죠?!
localhost:3000 ERR_CONNECTION_REFUSED
0
913
1
이벤트 쿼리문제입니다
0
122
1
npm install 이 안됩니다
0
1044
2
질문있어요
0
186
1
수정해보았는데 답장이 오지 않습니다.
0
273
1
postman 에 답이 오지 않습니다.(수정)
0
261
1
최신버전 부분
0
163
1
웹브라우저 실행이 안됩니다 .인스톨도 안되구요. 최신버전으로 해서 진행하고 자 하는데 어떻게 하면 될가요?
0
151
1
포스트맨에서 send를 하였을 때 오류가 납니다.
0
162
1
한국어 챗봇 만들기
0
312
1
Error: 16 UNAUTHENTICATED: Failed to retrieve auth metadata with error: invalid_grant: Invalid JWT Signature. 에러 발생
0
216
1
npm start 하고 throw e 이부분에서 에러가 뜨네요
0
299
1
dialogflow 줄바꿈
0
408
1
npm start 에러
0
529
1
npm run start 오류
0
793
2
Dialogflow ES에서 서비스 어카운트에 dialogflow client api설정 하는 법 질문
0
447
1
파이어베이스랑 연동은 어떻게 하나요?
0
539
1
npm install오류
0
627
1
invalid_grant: Invalid JWT Signature.
0
468
0
질문있어요!
0
304
0
에러
0
313
0
https://dialogflow.com/
0
338
1
Error: 7 PERMISSION_DENIED: IAM permission 오류
0
530
1
npm run start 시 cannot find module 에러
1
488
1

