inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기

챗봇 어플리케이션 만들기#3 구조 설명 & textQuery Route 만들기

질문있어요

186

코딩의외로

작성한 질문수 21

0

앞에 질문에 답변을 받았지만 링크로 참조하라는 답변이었는데 저는 그걸로는 해결을 할 수 없었습니다. 혹시 괜찮으시면 직관적인 해결법을 알려주실 수 없나요?

image.pngimage.png

send를 누르면 터미널에 이렇게 뜹니다.

 

Server Running at 5000
C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193
            throw new Error('The incoming JSON object does not contain a client_email field');
                  ^

Error: The incoming JSON object does not contain a client_email field
    at JWT.fromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193:19)
    at GoogleAuth._cacheClientFromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:313:16)
    at ReadStream.<anonymous> (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:347:36)
    at ReadStream.emit (node:events:519:28)
    at endReadableNT (node:internal/streams/readable:1696:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)

Node.js v20.16.0
PS C:\project\vswork\chatbot-app-master> 

아래와 같이 값이 입력이되어있는데도말입니다. 루트파일에다가 구글 인증json을 위치를 끌어다 넣어도 그렇습니다. 가르쳐줘서 고맙습니다. 근데 이렇게 문제가 생겨서 이 구간을 벗어나고 싶습니다 ㅠㅠ

image.png

react node.js

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

이수경님의 문제는 The incoming JSON object does not contain a client_email field 오류와 관련되어 있습니다. 이 오류 메시지는 Google 인증 정보를 포함하고 있는 JSON 객체에서 client_email 필드를 찾을 수 없다는 것을 의미합니다. 대부분의 경우, 이는 Google Cloud 프로젝트와 관련된 서비스 계정 키 파일이 잘못되었거나 올바르게 로드되지 않았음을 나타냅니다.

해결 방법은 다음과 같습니다:

  1. Google Cloud Console에서 해당 서비스 계정의 키 파일을 다시 생성하십시오. 이 과정에서 JSON 키 파일을 다운로드 받게 됩니다. 해당 파일에는 client_emailprivate_key 같은 필수 필드가 포함되어 있습니다.

  2. 다운로드 받은 JSON 키 파일을 프로젝트의 적절한 위치에 저장하십시오. 저장한 후, 해당 파일의 경로를 정확히 참조하도록 프로젝트 설정을 업데이트해야 합니다.

  3. dev.js 파일 (또는 해당 설정을 관리하는 다른 환경 설정 파일)에서 서비스 계정 키 파일 경로를 올바르게 참조하고 있는지 확인하십시오. 예를 들어, Node.js에서 Google Cloud 서비스를 사용하기 위해 google-auth-library를 사용하는 경우, 다음과 같이 키 파일을 지정할 수 있습니다:

const {GoogleAuth} = require('google-auth-library');

const auth = new GoogleAuth({
  keyFilename: 'path/to/your/service-account-file.json',
  // 기타 설정...
});
  1. 위의 단계에서 문제가 해결되지 않는 경우, 환경 변수를 통해 인증 정보를 제공하는 방법을 고려할 수 있습니다. 예를 들어, GOOGLE_APPLICATION_CREDENTIALS 환경 변수에 서비스 계정 키 파일의 경로를 설정함으로써 Google SDK나 라이브러리가 해당 파일을 자동으로 찾을 수 있도록 할 수 있습니다.

이 과정을 완료한 후에는 프로젝트를 다시 실행해보십시오.

이렇게 수정 후에도 문제가 지속된다면, 프로젝트 설정이나 코드 상의 다른 문제가 있을 수 있으므로, 더 자세한 분석이 필요할 수 있습니다. 코드의 다른 부분, 특히 인증 정보를 로드하고 있는 부분을 신중하게 검토해 보시기 바랍니다.

localhost:3000 ERR_CONNECTION_REFUSED

0

913

1

이벤트 쿼리문제입니다

0

122

1

npm install 이 안됩니다

0

1045

2

수정해보았는데 답장이 오지 않습니다.

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

794

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

339

1

Error: 7 PERMISSION_DENIED: IAM permission 오류

0

531

1

npm run start 시 cannot find module 에러

1

489

1

이것저것 해도 안되시는 분들은 직접 환경변수 설정하세요(윈도우기준)

1

636

2