Alexa Skill / Lambda не будет регистрировать тело запроса - PullRequest
0 голосов
/ 05 декабря 2018

Я новичок в Alexa Skill / Lambda.Я пытаюсь напечатать текст моего запроса.Я попытался использовать fetch с isomorphic-unfetch, и теперь я пытаюсь использовать модуль запроса npm.По какой-то причине я не могу получить тело запроса для печати в журналах CloudWatch, все остальное, что у меня есть, отображается нормально.Я также не получаю сообщение об ошибке, потому что я регистрирую это, и это не обнаруживается.Что я делаю неправильно?Я использую привязку аккаунта, и я знаю, что у меня есть пользовательский accessToken, и я использую этот токен, чтобы проверить, кто пользователь, используя другую конечную точку, поэтому я знаю, что у меня есть токен и метод, который у меня работает, если я запускаю его локально и спросто узел, но как только я пытаюсь зарегистрировать тело на aws / lambda CloudWatch, я не могу получить тело запроса на запись, так что я не уверен, работает ли он.Теперь, когда я имею в виду, что он работает локально, я имею в виду, что я удаляю $ {event.session.user.accessToken} и жёсткий код в токене доступа, затем запускаю узел index.js, а затем я вижу тело запроса.

Любая помощь приветствуется.Спасибо!

 let skill;

  exports.handler = async function (event, context) {
    getUserInfo(event);
    console.log(`REQUEST++++${JSON.stringify(event)}`);
    if (!skill) {
      skill = Alexa.SkillBuilders.custom()
        .addRequestHandlers(
          LaunchRequestHandler,
          CreateQuoteIntent,
          SessionEndedRequestHandler,
        )
        .addErrorHandlers(ErrorHandler)
        .create();
    }
    // console.log("SESSION**** " + event.session.user.accessToken);

    const response = await skill.invoke(event, context);
    console.log(`RESPONSE++++${JSON.stringify(response)}`);

    return response;
  };


function getUserInfo(event) {
    console.log("TOKEN: " +event.session.user.accessToken);
    const options = {  
        url: 'not showing url but api url is fine ',
        method: 'GET',
        headers: {
          Accept: 'application/json',
          'Content-Type': 'application/json',
          'Client-ID': 'not showing me key on stack',
          'Authorization': `OAuth ${event.session.user.accessToken}` 
        }
    };
    console.log('BEFORE REQUEST');
    request(options, function(err, res, body) {  
        console.log("ERROR: " + err);
        // let json = JSON.parse(body);
        console.log("BODY: " + body);
    });
    console.log('AFTER REQUEST');
}
...