2017-02-14 3 views
0

NodeJS файле server.jsУзел Js прибудет разместить данные как ключ JSON

var express  = require('express'); 
    var app   = express(); 
    var bodyParser = require('body-parser'); 
    var morgan  = require('morgan'); 
    var mongoose = require('mongoose'); 
    var moment  = require('moment'); 
    var http  = require('http'); 
    var jwt   = require('jsonwebtoken'); 
    var config  = require('./config'); 
    var User  = require('./app/models/user'); 

    var port = process.env.PORT || 8080; 
    mongoose.connect(config.database); 
    app.set('superSecret', config.secret); 
    app.use(bodyParser.urlencoded()); 
    app.use(bodyParser.json()); 

    app.post('/onboardAuthentication', function(req, res) { 
     res.setHeader('Access-Control-Allow-Origin', '*'); 
     res.setHeader('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE'); 
     res.setHeader('contentType', 'application/x-www-form-urlencoded;charset=utf-8;'); 
     res.json(req.body); 
    }); 
var server = http.createServer(app); 
server.listen(port); 
console.log('Magic happens at http://localhost:' + port); 

Угловой API H Co, где передняя сторона API ударил

var serviceRoot='http://localhost:8080/onboardAuthentication'; 

      var deferred=$q.defer(); 

      var req = { 
       method: 'POST', 
       url: serviceRoot, 
       data: { key: 'value' }, 
       contentType: 'application/x-www-form-urlencoded;charset=utf-8;' 
      }; 

      $http(req).then(goodResponse,badResponse); 

      return deferred.promise; 

    function goodResponse(response) 
    { 
     console.log("Good response"); 
     console.log(response); 

    } 
    function badResponse(response) 
    { 
     console.log("Bad response"); 
     console.log(response.data); 
    } 

Это напечатать результат в этом formate, он делает post данные как ключ, а значение пустое, но я хочу получить сообщение pos t в формате json с использованием body-parsar node js.

{"key":"value"}: "" 

ответ

0

Если вы хотите отправить простой текстовый/ASCII, то х-WWW-форм-urlencoded будет работать, по умолчанию углового будет посылать приложения/JSON на сервер.

var req = { 
       method: 'POST', 
       url: serviceRoot, 
       data: { key: 'value' }, 
       // comment this line, you don't need it 
       //contentType: 'application/x-www-form-urlencoded;charset=utf-8;' 
      }; 
+0

по-прежнему существует проблема, я думаю, этот вопрос со стороны узла –

+0

Если расслоение плотной вы console.log (req.body), что он показывает? – digit

+0

не отвечает пустое значение, которое оно показывает –