Не могу получить данные формы по запросу POST

1

я пытаюсь получить параметры моего почтового запроса. Я могу отправить их с помощью JSON, и это будет работать (если я удалю свойство type из BodyParser.json), но не создаст данные. Я использую промежуточное программное обеспечение body-parser следующим образом.

const BodyParser      = require('body-parser')

const Config          = require('../config/environment');

const Express         = require("express");
const App             = Express();

App.use(BodyParser.json({type: '/', limit: '50mb'}));
App.use(BodyParser.urlencoded({extended: false}));

App.listen(3000, () => {Response.logger('Api running on port 3000.');});  

App.post("/signup", (req, res, next) =>
{
    consoleAlert('SIGNUP', false);

    console.log(req);

    Account.signup(req.params).then(
    function(results) {response(results, res, 'SIGNUP');},
    function(error)   {response(error, res, 'SIGNUP');});
});  

Поэтому, когда я распечатываю req, тело всегда пусто с данными формы

  • 0
    Попробуйте установить extended: true
  • 0
    Это не сработало, я начинаю думать, что Body-parser на самом деле не поддерживает данные формы
Показать ещё 4 комментария
Теги:
body-parser

2 ответа

0

Я не вижу ничего плохого в этом коде, ошибка должна быть на стороне клиента (браузера).

0

Написано с нуля - похоже, это работает:

сервер:

//app.js
const express = require('express');
const bodyParser = require('body-parser');

let app = express();

app.use(bodyParser.urlencoded({extended: false}));

app.post('/', function(req, res, next) {
    console.log(req.body);
});

app.listen(3022);

client: вызов curl из командной строки для отправки данных формы (по умолчанию application/x-www-form-urlencoded), IP-адрес сервера моего узла - 10.10.1.40:

curl -d "param1=value1&param2=value2" -X POST http://10.10.1.40:3022/

Ещё вопросы

Сообщество Overcoder
Наверх
Меню