Я пытаюсь создать приложение для Android с использованием веб-сервисов node.js. Первый интерфейс позволяет пользователю подключаться к хосту с использованием IP-адреса, логина и пароля, чтобы он мог получить все базы данных, я хочу сохранить учетные данные объекта. использовать во всех других маршрутах, я пробовал экспресс-сеанс, но он не работал. Любое решение?

app.post('/connect',function(req,res){
    sess=req.session;
    sess.user=req.body.user;
    sess.password=req.body.password;
    sess.server=req.body.server;
    sess.database=req.body.database;
    console.log(sess)
    user = req.body.user;
    password = req.body.password;
    server = req.body.server;
    database = req.body.database;

    var config = {
        user: user,
        password: password,
        server: server,
        database: database
    };



    // connect to your database
    sql.connect(config, function (err) {

        if (err)  {res.json({success: false, message: "error connexion to SQL Server"});
            sql.close()}
        else{

            res.json({success: true, message: "connexion established to SQL Server"});

            sql.close();
        }
    });
});
0
Laamiri Oussema 28 Май 2017 в 11:44

2 ответа

Лучший ответ

В вашем случае запрос, сделанный http lib для android (или другого), который не является просмотром, express-session не будет работать. Ваш сервер должен быть похожим на сервер API, клиент (android) запрашивает у сервера входа в систему токен (ключ API или тот же), в следующем запросе клиент вставляет токен push-данных, и сторона сервера может проверять подлинность запроса. Я предлагаю прочитать о JWT (Json Web Token), чтобы сделать это.

0
hoangdv 29 Май 2017 в 03:50

Это легко, если вы используете экспресс-модуль в приложении узла. Вы в основном создаете маршруты, используя экспресс и можете передать необходимые данные в соответствующие маршруты и представления следующим образом

router.get('/', function(req, res, next) {
  res.render('category', 
    { 
      videodata: vd
    });
});

Здесь при обработке ответа также включаются данные, которые должны быть переданы. Это имя videodata и значение vd

0
Jagz 28 Май 2017 в 11:17