Я хотел бы проверить, существует ли пользователь в моей коллекции «Users» в Firestore, поэтому я не пишу пользователю, которого не существует. Я немного растерялся с документацией, поэтому любая помощь будет принята с благодарностью.
Вот что я пробовал до сих пор:
const admin = require('firebase-admin');
const functions = require('firebase-functions');
const express = require('express');
admin.initializeApp();
const db = admin.firestore();
const messaging = admin.messaging();
const app = express();
app.get('/checkUserID/:userID', async (request: any, response: any) => {
const userID: String = request.params.userID;
console.log(`Looking up user ${userID}`);
try {
db.doc("Users/"+userID).get().then((documentSnapshot: any) => {
const userExists = documentSnapshot.exists;
if (userExists) {
response.set('Cache-Control', 'private, max-age=300');
return response.status(200);
} else {
return response.status(404).json({errorCode: 400, errorMessage: `User '${userID}' not found`});
}
});
} catch(error) {
console.log('Error checking if user exists:', userID, error.message);
return response.sendStatus(404);
}
});
exports.api = functions.https.onRequest(app);
Заранее большое спасибо: D
РЕДАКТИРОВАТЬ: Моя проблема в том, что я получаю 408 тайм-аут примерно через минуту.