无法访问 Google Firestore 数据 - 被 Cors 政策阻止

时间:2021-07-14 21:07:53

标签: reactjs firebase google-cloud-firestore cors

我正在尝试从 Firestore 数据库中获取数据,但收到此错误消息:

从源“http://localhost:3000”获取“(链接到我的 myfirebaseaccount,出于隐私原因删除)”的访问权限已被 CORS 政策阻止:没有“访问控制允许源”请求的资源上存在标头。如果不透明响应满足您的需求,请将请求的模式设置为“no-cors”以在禁用 CORS 的情况下获取资源。

import { useState, useEffect } from 'react'
import { projectStorage, projectFirestore, timestamp } from '../firebase'

const useStorage = (file) => {
const [progress, setProgress] = useState(0)
const [error, setError] = useState(null)
const [url, setUrl] = useState(null)

useEffect(() => {
    const storageRef = projectStorage.ref(file.name)
    const collectionRef = projectFirestore.collection("images");

    storageRef.put(file).on("state_changed", (snap) => {
     let percentage = (snap.bytesTransferred / snap.totalBytes) * 100;
     setProgress(percentage);   
    },(err) => {
        setError(err);
    }, async() => {
        const url = await storageRef.getDownloadURL();
        const createdAt = timestamp()
        await collectionRef.add({ url, createdAt })
        setUrl(url);
    })
}, [file])

return { progress, url, error }

}

export default useStorage;

0 个答案:

没有答案