我们使用不可靠的端点提交表单,偶尔会超时。
window.onload = function(){
document.forms['form-to-third-party-endpoint'].submit()
}
检测超时并尝试重新提交表单的最佳方法是什么?也许在放弃之前尝试5次。
这是第三方集成 - 表单在iframe中加载并自动提交以获取HTML内容。
注意:是的,更好的解决方案是修复超时。但我们需要现场取出系统,不能等待第三方。
答案 0 :(得分:1)
我认为最好的方法是在几秒钟内制作一个计数器,当它达到300(5分钟)时再次提交表格。如果用户离开页面,则可以使用onbeforeunload
停止计数器。
像这样的东西
var counter = 0, interval;
window.onload = function() {
interval = setInterval(addCounter, 1000);
}
function addCounter() {
counter++;
if(counter === 300) {
counter = 0;
document.forms['form-to-third-party-endpoint'].submit()
}
}
window.onbeforeunload = function() {
clearInterval(interval);
}
这是一个概念,此代码未经过测试。