2016-12-21 14 views
0

Я разработал приложение, использующее responsejs и flux для фронтальной и экспресс для задней части сервера. все работало нормально. но когда я размещаю приложение, это проблема. если более одного пользователя запускает приложение через его URL-адрес, изменения применяются ко всем экземплярам. не позволяет разрешить несколько экземпляров?Связанное размещенное приложение с nodejs и выражает

EDIT: Вот мой GetMail: это функция в моих server.js

app.get('/api/getmail', function(req, res) { 
    try { 
     let id = req.param('id'); 
     var options = { sql: 'SELECT * FROM message WHERE message_owner="' + id + '"', nestTables: true }; 
     connection.query(options, function(err, result) { 
      if (err) throw err; 
      res.json(result); 
     }); 
    } catch (error) { 
     res.json({ error: error }); 
    } 
}); 

Когда пользователь нажимает (спереди) getMails, запрос отправляется с апи я сделал (api использует запрос от superagent/lib/client). Порт моего сервера указывается следующим образом:

app.listen(3002); 
+1

Как у вас установлена ​​ваша маршрутизация? Как вы используете один и тот же URL-адрес для нескольких экземпляров? Вы используете одно и то же приложение несколько раз на одном сервере? Какую услугу хостинга вы используете? Нам нужен больше контекста и кода, чтобы помочь вам. –

+0

Я использую реактивный маршрутизатор для указания маршрутов. Я объясню: моя точка входа - index.js, где я указываю маршруты с помощью реагирующего маршрутизатора. затем я запрашиваю сервер (выражение, которое сообщает базу данных wit). клиентская сторона запускается в xxxxxx.com:3000, а серверная часть запускается на xxxxx.com:3002. поэтому, если я хочу отправить запрос от клиента на сервер, я использую «запрос» из суперагентной библиотеки (модуль узла) и url = «http://xxxxxx.com.com002/getmail». Я размещаю свое приложение на OVH, где я установил nodejs. У меня нормальный accout (я не root), поэтому всякий раз, когда я хочу получить доступ к url, я всегда указываю порт 3000 – Meryam

+0

- это ваш nodejs, если да, тогда попробуйте позвонить по маршруту, как вы его называете, в вашей локальной системе. просто измените порт no и используйте URL-адрес, например 127.0.0.1 (локальный хост) или какой-либо другой URL-адрес. использовать, как это 127.0.0.1:3002/getmail –

ответ

0

Так что я могу сказать вам, что ваш вопрос здесь:

let id = req.param('id'); 

функция req.param была deprecated in express. Поэтому let id всегда равен null. Итак, что вы говорите на своем сервере MYSQL: «Выберите все из сообщения, где id равно никому». Если вы хотите получить id из строки запроса, вы можете посмотреть this post. This method также является вариантом для вашей ситуации.

 Смежные вопросы

  • Нет связанных вопросов^_^