Rez*_*eza 4 firebase google-cloud-platform google-vision google-cloud-functions
我有一个 firebase 函数,并且尝试在我的 firebase 函数中使用 Vision API,但是在本地服务时出现此错误
PERMISSION_DENIED:项目 563584335869 之前未使用过 Cloud Vision API 或已禁用。通过访问https://console.developers.google.com/apis/api/vision.googleapis.com/overview?project=563584335869启用它,然后重试。如果您最近启用了此 API
首先,我不知道 563584335869来自哪里,因为当我单击链接时,它不是一个有效的项目

其次,我选择该项目并在其上启用 Vision API,仍然收到相同的错误
代码非常简单,无论如何我将其添加到这里
async analyze(imageStorageLocation: string): Promise<any> {
const vision = require('@google-cloud/vision');
const client = new vision.ImageAnnotatorClient();
const [result] = await client.textDetection(imageStorageLocation);
const detections = result.textAnnotations;
console.log('Text:');
detections.forEach((text: string) => console.log(text));
}
Run Code Online (Sandbox Code Playgroud)
这就是我初始化 firebase admin 的方式
admin.initializeApp(functions.config().firebase);
这是package.json
"dependencies": {
"@google-cloud/vision": "^1.7.1",
"@nestjs/common": "^6.0.0",
"@nestjs/core": "^6.0.0",
"@nestjs/platform-express": "^6.9.0",
"express": "^4.17.1",
"firebase-admin": "^8.7.0",
"firebase-functions": "^3.3.0",
"moment-timezone": "^0.5.27",
"reflect-metadata": "^0.1.12",
"rimraf": "^2.6.2",
"rxjs": "^6.3.3"
},
Run Code Online (Sandbox Code Playgroud)
我检查了我拥有的所有其他项目的 ID,该编号与任何项目都不匹配
该问题仅发生在我的本地,当部署到 firebase 时它可以工作
谢谢@Chris32,我根据他在评论中的引导找到了解决方案。
由于问题仅出现在我的本地服务器上并且部署时没问题,因此我这样做是为了解决问题(https://cloud.google.com/vision/docs/before-you-begin)
GOOGLE_APPLICATION_CREDENTIALSps 令人惊讶的是,正如 Chris 提到的,错误中的项目 ID 是硬编码的,因此具有误导性
| 归档时间: |
|
| 查看次数: |
871 次 |
| 最近记录: |