Проблемы с выполнением запросов AJAX - PullRequest
0 голосов
/ 29 ноября 2018

Я использую веб-представление Facebook Messenger для отображения формы, затем отправляю сообщения обратно пользователю, а также закрываю веб-просмотр.Моя проблема сейчас в том, что веб-браузер / браузер закрывается без отправки сообщений.Я не знаю, в чем проблема может быть здесь, это мой код:

                function closeWebview() {
                    MessengerExtensions.requestCloseBrowser(function success() {
                        console.log('closed')
                    });
                }

                function sendMessage() {
                    $.ajax({
                        type: 'POST',
                        url: '/test-message',
                        success: function (data) {
                            console.log('request sent');

                        }
                    })
                }
                sendMessage()
                closeWebview()

1 Ответ

0 голосов
/ 29 ноября 2018

$.ajax означает Асинхронный JavaScript и XML , поэтому проблема заключается в том, что closeWebview вызывается до завершения sendMessage вызова.

Решение заключается в использованииcallback функция.

function sendMessage(callback) {
         $.ajax({
            type: 'POST',
            url: '/test-message',
            success: function (data) {
               callback(data);
            }
         })
}
sendMessage(function(data){
  console.log(data);
  closeWebview()
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...