2017-02-09 7 views
2

Я подключил два метеоритных приложения через DDP. Я ожидал получить данные БД также во втором сервисном приложении, но я не получаю никаких данных. Поскольку оба выполняются на стороне сервера, я не делал подписки, что, по-моему, в этом примере не обязательно.Как использовать одну и ту же БД для двух подключенных приложений ddp

Что я делаю неправильно?

  1. Запуск основной веб-приложение: meteor (который должен загрузить MongoDB на порт 3001)
  2. Запуск приложения службы: MONGO_URL=mongodb://localhost:3001/mydb meteor --port 3100

Web (основной) /server/main.js

Examples = new Mongo.Collection('examples'); 
var serviceConn = DDP.connect("http://localhost:3100"); 
console.log(Examples.find().count()); // Returns 21 

служба 1 /server/main.js

Examples = new Mongo.Collection('examples'); 
console.log(Examples.find().count()); // Returns 0 ! 

Так почему я не могу получить данные по сбору на применении службы, поскольку это дает мне 0 результаты?

ответ

3

Попробуйте это в вашем приложении службы:

const con = DDP.connect('http://localhost:3000'); 

Examples = new Mongo.Collection('examples', { 
    connection: con, 
}); 

console.log(Examples.find().count()); 

Не забудьте запустить основное приложение первого