2016-11-08 4 views
1

Я пытаюсь отправить параметр сообщения (ключ: test, value: somevlaue) с помощью PostMan, используя . Восстановите рамки. Для этого я использовал 2 метод и оба не работает:Получение POST-параметров не работает

первого один показывает эту ошибку:

{ 
    "code": "InternalError", 
    "message": "Cannot read property 'test' of undefined" 
} 

2-ой (комментарий) показывает только ошибку: someerror

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

Вот мой код:

var restify=require('restify'); 
var fs=require('fs'); 
var qs = require('querystring'); 
var bodyParser = require('body-parser'); 
var urlencodedParser = bodyParser.urlencoded({ extended: false }) 
var controllers = {}; 

var server=restify.createServer(); 

server.post("/get", function(req, res, next){ 
    res.send({value: req.body.test, 
    error: "someerror"}); 

    //**********METHOD TWO********************* 

/* 
    if (req.method == 'POST') { 
     var body = ''; 

     req.on('data', function (data) { 
      body += data; 
     }); 

     req.on('end', function() { 
      var post = qs.parse(body); 
      res.send({ 
       Data: post.test, 
       Error: "Someerror" 
      }); 
     }); 
    } 
    */ 

}); 
server.listen(8081, function (err) { 
    if (err) 
     console.error(err); 
    else 
     console.log('App is ready at : ' + 8081); 
}); 
+0

в вашем почтовом коде вы проверили данные. 'req',' req.body' и 'req.body.test'? Все ли они неопределенны или они возвращают некоторые ценности? – Craicerjack

+0

Итак, как вы делаете сообщение? – epascarello

+0

При проверке req отображается как длинный тип URL-адреса (я не знаю, что это такое), а req.body - это [object Object] –

ответ

0

Похоже, вы, возможно, ваш bodyparser неправильно настроена. Согласно the docs в разделе тела анализатора, установить синтаксический анализатор таким образом:

server.use(restify.bodyParser({ 
    maxBodySize: 0, 
    mapParams: true, 
    mapFiles: false, 
    ..... 
})); 

по умолчанию является отображение данных в req.params, но вы можете изменить это и сопоставить его req.body, установив mapParams опцию false

+0

Извините, страница не загружается. –

+0

Вы удалили 'var bodyParser = require ('body-parser');' и вы получаете какие-либо ошибки – Craicerjack

+0

Я не удалял его. Должен ли я его удалить? –

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