sourcecode

클라우드 기능을 로컬로 실행하면 "functions.config() is not available" 오류가 나타남

copyscript 2023. 6. 13. 22:30
반응형

클라우드 기능을 로컬로 실행하면 "functions.config() is not available" 오류가 나타남

Firebase용 Cloud Functions는 최근에 출시되었으며 새로 설치할 때의 지침을 따르고 있습니다.여기 "시작하기" 페이지가 있습니다.

"npm install -g firebase-tools"를 설치했고 모든 파일이 프로젝트에 있습니다.저는 WebStorm 2016.3과 Node를 사용하고 있습니다.JS v6.10.0.

저는 파이어베이스 로그인 및 파이어베이스 init 기능을 설치하고 설정했습니다.내 설정.이것이 제가 준비한 것입니다.

내 소포.제이손

 {
   "name": "functions",
   "description": "Cloud Functions for Firebase",
    "dependencies": {
     "firebase-admin": "^4.1.2",
     "firebase-functions": "^0.5"
   },
    "private": true
 }

처음 두 줄의 코드가 작동합니다.

  const functions = require('firebase-functions');
  const admin = require('firebase-admin');

하지만 제가 이 노선을 운영하려고 할 때...

  admin.initializeApp(functions.config().firebase);

이 오류를 이해합니다.

 Error: functions.config() is not available. Please use the latest version of the Firebase CLI to deploy this function.
   at init (/Users/.../functions/node_modules/firebase-functions/lib/config.js:46:19)
   at Object.config (/Users/.../functions/node_modules/firebase-functions/lib/config.js:29:9)
   at Object.<anonymous> (/Users/.../functions/index.js:11:31)
   at Module._compile (module.js:570:32)
   at Object.Module._extensions..js (module.js:579:10)
   at Module.load (module.js:487:32)
   at tryModuleLoad (module.js:446:12)
   at Function.Module._load (module.js:438:3)
   at Module.runMain (module.js:604:10)
   at run (bootstrap_node.js:394:7)

내가 여기서 뭘 놓쳤지요?

나처럼 로컬에서 기능을 실행하려고 할 때 이 오류가 발생했다면, 그 이유는functions.config()클라우드 기능 런타임 내에서만 사용할 수 있습니다.

배포하기 전에 기능을 테스트하려는 경우에는 로컬에서 기능을 실행하는 방법에 대한 설명서 링크를 참조하십시오.특히 이 부분은 다음과 같습니다.

사용자 정의 함수 구성 변수를 사용하는 경우, Firebase 서버를 실행하기 전에 프로젝트의 functions 디렉토리에서 다음 명령을 실행합니다.

firebase functions:config:get > .runtimeconfig.json

그러나 Windows PowerShell을 사용하는 경우 위 명령을 다음으로 대체합니다.

firebase functions:config:get | ac .runtimeconfig.json

달리고 있었습니다.firebase deploy잘못된 dir에서.이것이 누군가에게 시간을 좀 절약해 주기를 바랍니다.

그것은 당신이 여전히 오래된 버전을 가지고 있을 것처럼 보입니다.firebaseCLI(최신 버전을 설치하려고 했지만)firebase-tools.

실행하여 확인할 수 있습니다.firebase --version그것은 적어도 말할 수 있을 것입니다.3.5.0그렇지 않다면, 당신은 도망치고 싶을 것입니다.npm install -g firebase-tools다시, 바라건대 그것이 상황을 해결할 것입니다.

만약 당신이firebase --version잘못된 버전이 계속 표시됩니다. 실수로 여러 버전이 있는지 확인하고 싶을 것입니다.firebase-tools설치된.

제 경우에는 .runtimeconfig.json / .env / .env.local이 어떤 폴더에서도 작동하지 않았습니다.

윈도우의 PWD와 관련된 파이어베이스 도구에 문제가 있는 것으로 밝혀졌습니다.

"firebase emulator:start"를 실행하기 전에 다음을 실행합니다.

$env:CLOUD_RUNTIME_CONFIG="$(pwd)/functions/.runtimeconfig.json"

언급URL : https://stackoverflow.com/questions/42841453/running-cloud-functions-locally-gives-error-functions-config-is-not-available

반응형