Студия Twilio не перечисляет услуги - PullRequest
1 голос
/ 27 апреля 2019

Я устанавливаю приложение синхронизации с помощью библиотеки синхронизации Twilio.По какой-то причине ни один из методов API REST не работает.То есть я не могу получить какой-либо из методов синхронизации к console.log () что-либо через функции времени выполнения.

Я могу, однако, простой текст console.log ().

Вотмой код:

exports.handler = function(context, event, callback) {

    // 0. Init
    // const phoneNumber   = event.phoneNumber;
    const issueLimit    = 3; // CHANGE IF NEEDED
    const listName      = 'issues';
    const twilioClient  = context.getTwilioClient();


    // 1. List all  lists 
    twilioClient.sync.services(context.SYNC_SERVICE_SID)
       .syncLists
       .list({limit: 20})
       .then(syncLists => syncLists.forEach(s => console.log(s.sid)));


    // 2. return true if quota reached

    console.log("Got to here");


    // 3. return false
    callback(null, undefined);
};

Единственный код, который, по-видимому, выполняется, это 'console.log ("Got to here");'.Я также не получаю никаких сообщений об ошибках.

Любые рекомендации искренне приветствуются.

1 Ответ

1 голос
/ 27 апреля 2019

Когда вы видите .then(), это обещание, и вы можете прочитать больше об этом здесь https://www.twilio.com/blog/2016/10/guide-to-javascript-promises.html

Другими словами, движок JavaScript выполняет ваши шаги 2., а затем 3.не дожидаясь окончания 1..И так как вы возвращаетесь на шаге 3 с callback(null, undefined);, вы не увидите журналы.

Итак, вам придется переместить callback() внутри .then(), что-то вроде этого:

exports.handler = function (context, event, callback) {

    // 0. Init
    // const phoneNumber   = event.phoneNumber;
    const issueLimit = 3; // CHANGE IF NEEDED
    const listName = 'issues';
    const twilioClient = context.getTwilioClient();


    // 1. List all  lists 
    twilioClient.sync.services(context.SYNC_SERVICE_SID)
        .syncLists
        .list({ limit: 20 })
        .then(
            function (syncLists) {
                console.log("Got to here");
                syncLists.forEach(s => console.log(s.sid));
                callback(null, undefined);
            }
        );


};
...