Как импортировать функции с AWS лямбда? - PullRequest
0 голосов
/ 14 марта 2019

Я использую api gateway для вызова почтового запроса в мой lambda, который проверяет, если httpMethod is post, если сообщение, то выполните следующее.

по умолчанию точка входа - index.js, которую я сохранил, но затем я думаю, что если я использую тот же lambda, я также могу проверить, является ли это get httpMethod, если так, то сделайте следующее. Но я хочу отделить свои коды. Который я вижу для той же функции lambda, я могу добавлять файлы. Поэтому я попытался добавить еще один файл с именем post.js, а затем потребовать в index.js

Почему-то это не передача значений или вызов экспортированной функции в post.js.

index.js

  const postHandler = require('./post.js');

  exports.handler = async (event, context) => {
      try {
          const httpm = event.context["http-method"];
          const rbody = event["body-json"];

          console.log(postHandler, 'post handler function?');  // { postHandler: [AsyncFunction] } 'post handler function?'
          console.log(httpm, 'httpmhttpm');  // 'POST'

          if (httpm === 'POST') return postHandler(rbody);
      } catch (e) {
          return e;
      }

  };

post.js // здесь не делается ничего особенного, но ни одна из этих консолей не отображается

exports.postHandler = async (rbody) => {
    console.log('I am inside postHandler()');
    console.log(rbody);

    return {status: true};
};

Заранее спасибо за любые предложения / помощь.

1 Ответ

1 голос
/ 14 марта 2019

// default export (change post.js file)
module.exports = async (rbody) => {
    console.log('I am inside postHandler()');
    console.log(rbody);

    return {status: true};
};

// OR !

// change (index.js file)
const { postHandler } = require('./post.js');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...