Я использую облачные функции firebase для создания страницы входа и регистрации, но сессия не состоит. Он создает новую сессию каждый раз, когда я обновляю sh или повторно посещаю. Поэтому я прекращаю создавать страницу входа и регистрации, пока не исправлю эту проблему с сеансом. Я попытался сделать простой метод сеанса, чтобы проверить, работает он или нет, но все еще есть та же проблема. Создание сеанса каждый раз.
const functions = require('firebase-functions')
const admin = require('firebase-admin')
const {Firestore} = require('@google-cloud/firestore')
const {FirestoreStore} = require('@google-cloud/connect-firestore');
const serviceAccount = require('./firebase-key/**.json')
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "**.com"
})
const db = admin.firestore();
const express = require('express')
const app = express()
const session = require('express-session');
const cors = require('cors')({origin: true});
const fs = require('fs');
app.use((req, res, next) =>{
res.header('Access-Control-Allow-Origin', '**.com');
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, X-AUTHENTICATION, X-IP, Content-Type, Accept');
res.header('Access-Control-Allow-Credentials', true);
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');
next();
})
app.use(session({
secret: '**',
resave: false,
saveUninitialized: false,
store: new FirestoreStore({
dataset: new Firestore({
kind: 'express-sessions',
}),
}),
cookie : {
maxAge : 1000 * 60 * 30
}
}));
app.use(cors);
app.get('/testing-session', function(req, res, next){
console.log('req.session: ', req.session)
if(req.session.num === undefined){
req.session.num = 1
}else{
req.session.num = req.session.num + 1
}
res.json({
num: `${req.session.num}`
})
})
exports.api = functions.https.onRequest(app)
(я подвергся цензуре **) Это мой код. В основном я скопировал код, который работает нормально, а мой - нет.