我正在运行一个云函数,每次在我的firestore上创建特定文档时都会触发该函数。这个文档有一个公共uri作为字段,它引用了以前存储在我的GCStorage桶中的图像。
查看这里的Node.js示例,我可以看到我们必须向GCVision客户端提供文件名以使用API:
// Performs safe search detection on the local file
const [result] = await GCV.safeSearchDetection(fileName);
const detections = result.safeSearchAnnotation;
console.log("Safe search:");
console.log(`Adult: ${detections.adult}`);
console.log(`Medical: ${detections.medical}`);
console.log(`Spoof: ${detections.spoof}`);
console.log(`Violence: ${detections.violence}`);
console.log(`Racy: ${detections.racy}`);
但是,如果我只有一个带签名的url呢?
const fileUrl = "https://storage.googleapis.com/my-project-191sa.appspot.com/images/imageName.jpg?GoogleAccessId=firebase-adminsdk-as2af%my-project-191sa.iam.gserviceaccount.com&Expires=4202444800&Signature=AXh..."
我是否必须解析url并获得imageName以使用API?还是有其他方法直接提供签名url ?
好吧,愚蠢的问题。如果你直接传递uri,它可以工作。
const [result] = await GCV.safeSearchDetection(imageUri);