我正在使用离子框架导航来自注册用户的图像文件,该用户使用uploadcare上传图像并将直接图像信息发送到Firestore Firebase数据库。我正在使用“ ionic serve”命令打开在Mozilla Firefox中打开的应用程序。当我上传图像时,它在我的检查元素控制台中显示了一些错误:
FirebaseError:[code = permission-denied]:缺少权限或权限不足
这是我的uploader.page.ts代码
import { Component, OnInit } from '@angular/core';
import { Http } from '@angular/http'
import {AngularFirestore} from '@angular/fire/firestore';
import {UserService} from '../user.service';
import { firestore } from 'firebase/app';
@Component({
selector: 'app-uploader',
templateUrl: './uploader.page.html',
styleUrls: ['./uploader.page.scss'],
})
export class UploaderPage implements OnInit {
imageURL: string
desc : string
constructor(
public http: Http,
public afstore: AngularFirestore,
public user: UserService) { }
ngOnInit() {
}
createPost(){
const image = this.imageURL
const desc = this.desc
this.afstore.doc('users/${this.user.getUID()}').update({
posts: firestore.FieldValue.arrayUnion({
image,
desc
})
})
}
fileChanged(event){
const files = event.target.files
const data = new FormData()
data.append('file', files[0])
data.append('UPLOADCARE_STORE', '1')
data.append('UPLOADCARE_PUB_KEY','46efb6e9d65277034002')
this.http.post('https://upload.uploadcare.com/base/', data)
.subscribe(event => {
console.log(event)
this.imageURL = event.json().file
})
}
}
我希望数据库云存储会提及注册用户上传的具体信息
答案 0 :(得分:1)
这是一个正式问题,因为Firebase阻止您的应用程序发送数据,您应该允许您的应用程序写入和读取数据。作为快速解决方案,您应该转到
Database tab in your relevant database--->select which type of DB yu are using
-->Rules tab on the top column ,
您将看到一小段代码,其状态为:“ false”并写入“ false”,使它们都为“ true”并应用更改并保存。它应该使它工作。如果没有让我知道