Os dados JSON no corpo da solicitação não estão sendo analisados usando body-parser

Quando envio uma solicitação POST usando o carteiro para localhost: 8080 / api / newUser com corpo da solicitação:

{name: "Harry Potter"}

No final do servidor, console.log (req.body) imprime:

{ '{name: "Harry Potter"}': '' }

server.js

var express = require('express'); 
var app = express();
var router = express.Router();
var bodyParser = require('body-parser');

app.use('/', express.static(__dirname));

router.use(function(req, res, next) {
    next();
});

router
    .route('/newUser')
    .post(function(req, res) {
        console.log(req.body);
    });

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json()); // support json encoded bodies
app.use('/api', router);

app.listen(8080);

O que estou fazendo errado?

questionAnswers(2)

yourAnswerToTheQuestion