Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.02.2018, 13:44
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Как повторить нажатие кнопки после неудачного POST запроса?
Есть некоторый скрипт (фронтенд).
Следующие строчки нажимают на кпопку на сайте.
$('.button_htable input[name=bet]').val(parseFloat(bet).toFixed(8));
var buttonPlayBtn = $('.button_htable .clButtonPlay')[3];
buttonPlayBtn.click();
Result();

Кнопка, на которую нажимает скрипт генерирует POST запрос.
В среднем запрос проходит за 500 мс. Порой бывает что это время увеличивается до 17 секунд (например).
А порой POST запрос не проходит и мы получаем 502(), либо какие-нибудь другие ошибки.

Как можно доработать код, чтобы выполнение дальнейшего кода (вызов функции Result()) происходил после окончания POST запроса. А в случае ошибки (например 502()) кпопка нажималась повторно?
Ответить с цитированием
  #2 (permalink)  
Старый 21.02.2018, 13:59
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

antonhauff, стоит показать код не нажатия кнопки, но отправки запроса.
Ответить с цитированием
  #3 (permalink)  
Старый 21.02.2018, 14:06
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Сообщение от Nexus Посмотреть сообщение
antonhauff, стоит показать код не нажатия кнопки, но отправки запроса.
В том то все и дело, что объект запроса XHR генерирует не скрипт. Он генерируется при нажатии на кнопку.
Ответить с цитированием
  #4 (permalink)  
Старый 21.02.2018, 14:10
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

antonhauff, т.е. речь о нативной отправке формы?
Если да, то о какой форме может идти речь, если со страницы мы уже ушли и никакой формы у нас больше нет?
Да и выполнить никакого кода мы не можешь, поскольку браузер вывел информацию об ошибке.
Ответить с цитированием
  #5 (permalink)  
Старый 21.02.2018, 14:26
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Сообщение от Nexus Посмотреть сообщение
antonhauff, т.е. речь о нативной отправке формы?
Если да, то о какой форме может идти речь, если со страницы мы уже ушли и никакой формы у нас больше нет?
Да и выполнить никакого кода мы не можешь, поскольку браузер вывел информацию об ошибке.
Со страницы мы никуда не уходим.
Это кнопка отправки сообщений. Мы ее можем нажать 10 000 раз и все будет хорошо, а на 10 001 раз в консоле мы увидим ошибку 502(). Можно конечно перезагрузить страницу тем самым запустив скрипт по новой.
Ответить с цитированием
  #6 (permalink)  
Старый 21.02.2018, 14:34
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

antonhauff, не представляю, как можно обработать fail левого асинхронного запроса.

Если форма отправляется асинхронно, то найдите код, которые её отправляет.
Если есть возможность его отредактировать, то просто добавьте обработку ошибок.
Если такой возможности нет, но форму отправляет jQ, то можно попробовать объявить глобальный обработчик ошибок для асинхронных запросов.

Последний раз редактировалось Nexus, 21.02.2018 в 15:06. Причина: поправил опечатку
Ответить с цитированием
  #7 (permalink)  
Старый 21.02.2018, 18:03
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от antonhauff
А порой POST запрос не проходит и мы получаем 502
Да вы бы долбили сервер каждые 5ms, чего мелочится то.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как зафиксировать кнопки чтобы они оставались на одном месте? mikefromru Элементы интерфейса 5 14.06.2017 23:15
Как извлечь текст который появляется после нажатия кнопки? olta78 Общие вопросы Javascript 2 26.05.2017 14:43
Сохранение результата ajax запроса после нажатия 'back' gregOlsen AJAX и COMET 5 18.11.2009 12:23
Как отслеживать нажатие кнопки back Петр Общие вопросы Javascript 4 01.10.2009 16:06
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20