res.send posílání celý objekt jako odpověď namísto obsahu

hlasů
0
  'use strict'
    var express = require('express');
    var bodyParser = require('body-parser');
    var request = require('request');
    var awsServerlessExpressMiddleware = require('aws-serverless-express/middleware');
    var app = express();
    var port = process.env.PORT || 5000;
    var VALIDATION_TOKEN = 'Serverless_My_Token';
    app.set('port', (port));
// Process application/x-www-form-urlencoded
    app.use(bodyParser.urlencoded({extended: true}));
app.use(awsServerlessExpressMiddleware.eventContext());
    // Process application/json
    app.use(bodyParser.json());
// for Facebook verification
        app.get('/webhook/', function (req, res) {
            var jsonObject = JSON.parse(req.rawHeaders[1]);
            if (jsonObject.params.querystring['hub.verify_token'] === 'serverless_my_token') {
         var hubChallenge = jsonObject.params.querystring['hub.challenge'];

         return res.send(hubChallenge);
    }
    res.send('Error, wrong token')
        });

Když zavoláte res.send get API vysílá celý objekt odezvy,

{
  statusCode: 200,
  body: ,
  headers: {
  },
  isBase64Encoded: false
}

Musím poslat pouze hubChallenge proměnné jako reakce:

Číslo hub.challenge: Příklad: 245421998as odpověď.

Jak mohu provést jen hubchallenge variabilní výnos jako odpověď namísto celý objekt stavu, který obsahuje. atd..

Chyba:

The URL couldn't be validated. Response does not match challenge, expected value=245421998, received={\statusCode\:200,...
Položena 03/02/2017 v 05:30
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Neměli byste přidat toto někde za app = express();váš kód:

app.use(awsServerlessExpressMiddleware.eventContext());

Právě teď to švy, že importujete awsServerlessExpressMiddlewareale nejste použití v aplikaci kdekoliv.

Odpovězeno 03/02/2017 v 10:45
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more