hallo in meinem Speicher Regeln i diesen Code habenFeuerbasis Speicherprüfung Metadaten im Schreibmodus Fehler
match /Image/{user}/{image}/image.jpg {
allow write: if request.auth != null && (request.auth.uid == user || request.auth.uid == 'nodeserver') && (resource.metadata['private'] == true || resource.metadata['private'] == false)
allow read: if request.auth != null && (request.auth.uid == user || resource.metadata.private == false)
}
wenn ich versuche, wie dieses i
var imageRef = storageRef.child('Image/' + uid + '/' + imageId + '/image.jpg');
var metadata = {
customMetadata: {
private: false
}
};
var imgref = imageRef.put(image, metadata);
eine benutzerdefinierte Metadaten, die von Client-Seite zu schreiben, erhalten diese Fehler von Feuerbasis Server
POST https://firebasestorage.googleapis.com/v0/b/project-4815133492804887736.app…Image%2F39IhnMU70uYrhJ9Y0XWBEMtQDR63%2F-KMP9NDx3D2gjJix3bpL%2Fimage.jpg 403()
service.js:303 x {code: "storage/unauthorized", message: "Firebase Storage: User does not have permission to…hJ9Y0XWBEMtQDR63/-KMP9NDx3D2gjJix3bpL/image.jpg'.", serverResponse: "{↵ "error": {↵ "code": 403,↵ "message": "Pe…n denied. Could not perform this operation"↵ }↵}", name: "FirebaseError"}code: "storage/unauthorized"message: "Firebase Storage: User does not have permission to access 'Image/39IhnMU70uYrhJ9Y0XWBEMtQDR63/-KMP9NDx3D2gjJix3bpL/image.jpg'."name: "FirebaseError"serverResponse: "{↵ "error": {↵ "code": 403,↵ "message": "Permission denied. Could not perform this operation"↵ }↵}"__proto__: Error__proto__: Object
, wenn ich diesen Code von Regeln entfernen
(resource.metadata['private'] == true || resource.metadata['private'] == false)
alle funktionieren gut, aber ich möchte die Metadaten überprüfen. Was ist die Lösung?
Ich versuche mit request.resource und ich bekomme den gleichen Fehler – DThink
Updates zu diesem Thema? – DThink