2016-10-28 3 views
0

Кроме того, используя тело-анализатор НПМ, как я могу отправить данные в

$http.post('/',data) 

так, что, когда я получаю его с

app.route('/').post(function(req,res){ 
    var body_better_be_a_string = typeof req.body; 
}) 

req.body должен быть типом строки. Попробовали, но req.body всегда возвращается как [object Object], требуется req.body, чтобы быть строкой.

ответ

0

JSON.stringify(req.body); даст вам строку Резон существо им угадать req.body является объект JSON и при появлении [object Object] вы пытаетесь с его точки зрения. Если вы используете JSON.stringify, он будет разбираться с строкой

+0

Когда я это делаю .. console.log ('JSON.stringify (req.body):' + JSON.stringify (req.body)); я получаю это в консоли ... JSON.stringify (req.body): {} Так что я получить обратно объект нотации скобки в виде строки, а не преобразование строки в JSON.ody)) –

0

В документах Express указано, что данные, отправленные в req.body, представляют собой список пар значений ключа, поэтому, если вы отправляете 'application/json' вы можете использовать JSON.stringify (req.body), чтобы убедиться, что он имеет строку типа для дальнейших манипуляций: http://expressjs.com/en/api.html#req.body

Кроме того, это может помочь, если вы обновили свои вопросы по причине «почему» вам нужно, чтобы это было строка. Есть ли какие-то манипуляции, которые вы пытаетесь реализовать, которые не работают?

Кроме того, вы можете включить другие части вашего сценария узла, которые используют тело-парсер, поскольку они могут иметь отношение к ответу.

+0

JSON .stringify (req.body) вернет мне это значение: {}. Поэтому вместо строкового представления JSON оно дает мне нотацию объекта как строку. Я также прокомментировал мой body-parser, но я все еще получаю объект как свой req.body. –

+0

Можете ли вы обновить блок углового кода, чтобы отобразить фактическое содержимое переменной данных, которую вы отправляете в почтовом запросе. –

+0

Я решил заменить тело запроса от текста на JSON вместо этого и используя JSON.stringify(), он работает нормально. –

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