Получить запрос от клиента на Node-сервер с объектами - PullRequest
0 голосов
/ 27 мая 2018

Как отправить объект с клиента на сервер Node.

Мой объект выглядит следующим образом:

var myobj = {};
myobj.title = "title1";
myobj.message = "message1";

Я просто хочу отправить его на сервер, чтобы сохранить егов базу данных с mongoDB.Но когда я пытаюсь отправить его и посмотреть на запрос, появляется только нечитаемый текст.

Это код на клиенте:

$.get( '/createA',myobj, function(data) {
   console.log(JSON.parse(data));
});

Это код моего сервера:

router.get('/createA', function(req, res, next) {
   let gelp = req._parsedOriginalUrl.query;
   let res1 = gelp.replace(/%22/g, "'");
   var test = JSON.parse(res1);
});

Я попытался отформатировать строку с помощью функции .replace() и проанализировать ее обратно в JSON, но она не работает.

Есть ли другой способ получить объект от клиентасторона JavaScript к узлу и работать там с этим объектом?

1 Ответ

0 голосов
/ 27 мая 2018

см .: https://api.jquery.com/jquery.post/

также просто console.log или выполните res.send ('это сработало!'), Чтобы протестировать эти вещи в первый раз, вместо того, чтобы пытаться изменить что-то до того, как вы узнаетеbackend получает его.

$.post("/createA", myobj, function( data ) {
  console.log( data.title );
  console.log( data.message ); 
}, "json");

и попробуйте сначала.

router.post('/createA', function(req, res) {
  res.send('it worked!')
});

после того, как это сработает, вы можете попытаться изменить и отправить обратно объект.вот так

router.post('/createA', function(req, res) {
  var data = {}
  data.title = req.body.title.toUpperCase()
  data.message = req.body.message.toUpperCase()
  res.send(data)
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...