Firebase, два проекта одной БД?

1

Позвольте мне объяснить ситуацию (извините мой английский, я сделаю все возможное):

У меня есть два проекта Firebase в моей Firebase-консоли: coretechtest-ce207 и агон-плагин

coretechtest-ce207 является основным приложением, а агон-плагин - это дополнительное приложение, которому необходимо подключиться к auth и базе данных coretechtest-ce207. Насколько я знаю, я не могу разместить два приложения в одном проекте, поэтому я сделал для отделенных проектов. Основной работает отлично, я могу делать все, что хочу (регистрация, база данных и т.д.), Но мне нужен главный и второй как на одном и том же сервере и на БД. Агон-плагин (вторичный) создается на основе приложения FriendlyChat и подключается непосредственно к серверу, в котором размещено приложение. Например:

// Initializes FriendlyChat.
function FriendlyChat() {
    this.initFirebase();

}

// Sets up shortcuts to Firebase features and initiate firebase auth.
FriendlyChat.prototype.initFirebase = async function() {
    // Shortcuts to Firebase SDK features.
    this.auth = firebase.auth();
    this.database = firebase.database();
    this.storage = firebase.storage();
    // Initiates Firebase auth and listen to auth state changes.
    await this.auth.onAuthStateChanged(this.onAuthStateChanged.bind(this));   
};

Как вы видите, нет необходимости

apiKey: "AIzaSyAfGm_ILVdfsd--Fw7aascc8tAB73q__Bbko",
authDomain: "coretechtest-ce207.firebaseapp.com",
databaseURL: "https://coretechtest-ce207.firebaseio.com",
projectId: "coretechtest-ce207",
storageBucket: "coretechtest-ce207.appspot.com",
messagingSenderId: "994718782"

Я попытался заменить его с помощью этих параметров, чтобы он

    FriendlyChat.prototype.initFirebase = async function() {
// Shortcuts to Firebase SDK features.

    this.auth = 'coretechtest-ce207.firebaseapp.com';
    this.database = 'https://coretechtest-ce207.firebaseio.com';
    this.storage = 'coretechtest-ce207.appspot.com';

// Initiates Firebase auth and listen to auth state changes.
   await this.auth.onAuthStateChanged(this.onAuthStateChanged.bind(this));   
};

Но не повезло, можете ли вы сказать мне, что я делаю неправильно? Я думал, что замена этого будет связана с моим основным проектом, но это не... =/Надеюсь, вы поймете, что я пытаюсь сказать!

Спасибо!

Теги:
firebase

2 ответа

0

Если вы используете Web и хотите разместить 2 webapps, которые используют одну и ту же базу данных, у вас есть пара вариантов. Бесплатно: единственное, что связывает веб-приложение с вашим db, - это ключи api в конфигурации Firebase, используемые для инициализации firebase в веб-приложении. Если 2 приложения используют те же настройки, они могут использовать один и тот же дБ. Если вы хотите разместить оба веб-приложения с помощью firebase бесплатно - только 1 приложение может быть размещено бесплатно для каждого проекта. Однако вы можете легко создать второй новый проект и разместить свое второе веб-приложение в этом новом проекте. Но не используйте новые настройки веб-api из этого нового проекта внутри вашего приложения. Вместо этого используйте те же самые оригинальные проекты. 2 приложения в 2 проектах могут использовать одну и ту же БД, если они используют ту же конфигурацию ключей API. (только выберите хостинг firebase при выполнении "firebase init" из cli для второго приложения)

Платный вариант: если вы перейдете на страницу хостинга в консоли firebase, и вы прокрутите вниз -you, вы увидите карту, предлагающую размещение более 1 приложения в 1 проекте. Он требует, чтобы вы обновлялись до планового плана -you -го. Который может или не может стоить вам денег.

0

Не 100% уверены в Web, но он должен быть похож на Android:

  • Переход к панели консоли
  • В левом верхнем углу нажмите на колесо рядом с надстройкой Project OverView.
  • Во всплывающем меню нажмите "Настройка проекта".
  • На странице настроек прокрутите вниз немного, и вы увидите синюю кнопку "добавить приложение" (или что-то в этом роде).

Затем сделайте все, что вы сделали в своем первом приложении, во второе приложение

Самое главное, не размещайте свой ключ api в Интернете!

  • 0
    Здравствуй! первое спасибо! Не волнуйтесь, это не мой ключ API;) Я собираюсь попробовать то, что вы сказали!
  • 0
    Поскольку мы уже избавляемся от ключа API на ключе: stackoverflow.com/questions/37482366/… :-)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню