ФорумПрограммированиеJavaScript → Вызов ajax запроса после обработки другого ajax запроса

Вызов ajax запроса после обработки другого ajax запроса

  • Zigfrid

    Сообщения: 6 Репутация: N Группа: Кто попало

    Spritz Янв. 16, 2018, 10:57 п.п.

    Добрый день. По нажатии на кнопку происходит ajax запрос. Сервер возвращает true или false. Если результат true, то должен выполняться еще один ajax запрос...

    document.getElementById('next_in').onclick = function (){
    
        $.ajax({
            data: {
                login: document.getElementById('log').value,
                password: document.getElementById('pass').value
            },
            type: 'POST',
            url: '/user_login',
            success: function (localRes) {
                if(localRes.result==true){
                    $.ajax({
                        data: {
                            login: document.getElementById('log').value
                        },
                        type: 'POST',
                        url: '/private',
                        success: function () {
                            alert('Соединение проходит')
                        },
                        error: function () {
                            alert('Есть ошибка!')
                        }
    
                    });
                }
                else{
                    alert('Неправильный логин или пароль!');
                }
            }
        });
    }

    Питоновский код:

    @app.route('/private', methods=['POST'])
    def private():
       # большие вычисления, логика и потом return
       return render_template("rates.html")

    Выходит сообщение, что соединение проходит, но перенаправления не происходит =(

    Пожалуйста, помогите корректно вызвать питоновскую функцию внутри js..

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 16, 2018, 11:39 п.п., спустя 42 минуты

    не понял о каком перенаправлении идет речь вообще

    Сапожник без сапог
  • Zigfrid

    Сообщения: 6 Репутация: N Группа: Кто попало

    Spritz Янв. 16, 2018, 11:55 п.п., спустя 15 минут 49 секунд

    Вот отсюда:

    
    type: 'POST',
    url: '/private',
    

    вот сюда

    
    @app.route('/private', methods=['POST'])
    def private():
       # большие вычисления, логика и потом return
       return render_template("rates.html")
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 17, 2018, 12:01 д.п., спустя 6 минут 25 секунд

  • Zigfrid

    Сообщения: 6 Репутация: N Группа: Кто попало

    Spritz Янв. 17, 2018, 12:04 д.п., спустя 2 минуты 50 секунд

    Ну в будущем то да, просто тут вроде простой кейс, думал сможете слету подсказать..

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 17, 2018, 12:07 д.п., спустя 2 минуты 30 секунд

    Ну в будущем то да, просто тут вроде простой кейс, думал сможете слету подсказать..

    @Zigfrid, дольше разговаривать нежели отдебажить самому)) Реалли ;) всегда так делаю!

    Сапожник без сапог
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz Янв. 17, 2018, 12:42 д.п., спустя 34 минуты 50 секунд

    Для начала хотелось бы понять, серверная часть вообще работает? Без всякого js?

  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz Янв. 17, 2018, 3:24 д.п., спустя 2 часа 42 минуты 7 секунд

    питоновскую функцию внутри js

    Нет никаких "питоновских функций внутри js". Есть отдельно js-код, отдельно http-запросы, отдельно питон-код. Каждую часть можно проверить отдельно.

    не всё полезно, что в swap полезло

Пожалуйста, авторизуйтесь, чтобы написать комментарий!