Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase 从下一个js浏览器代码中删除google gax_Firebase_Webpack_Safari_Next.js - Fatal编程技术网

Firebase 从下一个js浏览器代码中删除google gax

Firebase 从下一个js浏览器代码中删除google gax,firebase,webpack,safari,next.js,Firebase,Webpack,Safari,Next.js,我在服务器端使用了一个带有firebase admin的next.js设置。但由于以下错误,我无法在safari上运行该页面。(铬没有问题) SyntaxError:无效的正则表达式:无效的组说明符名称 在正则表达式上 /(?我找到了问题所在。一些路径调用firebaseAdmin调用进行服务器端呈现,以忽略fetch()调用。现在它可以工作了 if (typeof window !== "undefined") { let ref = firebaseCli

我在服务器端使用了一个带有firebase admin的next.js设置。但由于以下错误,我无法在safari上运行该页面。(铬没有问题)

SyntaxError:无效的正则表达式:无效的组说明符名称

在正则表达式上


/(?我找到了问题所在。一些路径调用firebaseAdmin调用进行服务器端呈现,以忽略fetch()调用。现在它可以工作了

if (typeof window !== "undefined") {
        let ref = firebaseClient.storage().ref(path);
        return await ref.getDownloadURL() as string;
    } else {

        // before change
        const admin = require('firebase-admin');
        let bucket = admin.storage().bucket(process.env.NEXT_FIREBASE_STORAGE_BUCKET);

        // after change
        let bucket = firebaseAdmin.storage().bucket(process.env.NEXT_FIREBASE_STORAGE_BUCKET);
        let file = bucket.file(path);

        return file.getSignedUrl({
            action: 'read',
            expires: '03-17-2025'
        })
            .then((data: GetSignedUrlResponse) => {
                return data[0];
            });
    }
这里回答了这个问题。
let admin = null;
if (typeof window === "undefined") {
    admin = require('firebase-admin');
    if (!admin.apps.length) {
        console.log("initializing firebase...");
        let serviceAccount = {};
        serviceAccount = require('../../keys/firebase-key.json');
        admin.initializeApp({
            credential: admin.credential.cert(serviceAccount),
            storageBucket: process.env.NEXT_FIREBASE_STORAGE_BUCKET,
            databaseURL: process.env.NEXT_PUBLIC_FIREBASE_DATABASE_URL,
        });
    }
}

export {admin as firebaseAdmin};
if (typeof window !== "undefined") {
        let ref = firebaseClient.storage().ref(path);
        return await ref.getDownloadURL() as string;
    } else {

        // before change
        const admin = require('firebase-admin');
        let bucket = admin.storage().bucket(process.env.NEXT_FIREBASE_STORAGE_BUCKET);

        // after change
        let bucket = firebaseAdmin.storage().bucket(process.env.NEXT_FIREBASE_STORAGE_BUCKET);
        let file = bucket.file(path);

        return file.getSignedUrl({
            action: 'read',
            expires: '03-17-2025'
        })
            .then((data: GetSignedUrlResponse) => {
                return data[0];
            });
    }