繁体   English   中英

当多个浏览器打开时,ajax 调用每个浏览器?

[英]When multiple browser are open, an ajax call each an every browser?

我正在使用 ajax 调用在特定时间触发电子邮件。 在特定时间触发电子邮件工作正常。 但是,ajax 调用会根据使用相同 URL 打开的浏览器数量多次触发它。 我需要的是只触发一次 ajax 调用。 这是代码:

$(document).ready(function() {
$.ajax({
    url: "<?php echo site_url('getclientlist')?>/",
    type: "GET",
    dataType: "JSON",
    success: function(data) {
        $.each(data, function(index, value) {

            var clientudo = value.Description;
            var departudo = value.Depart;
            var emailtime = value.Email_Sent;
            var hours, mins;

            function autoudoemail() {
                console.log('trigger');
                $.ajax({
                    url: "<?php echo base_url(); ?>autoudoemail",
                    type: "POST",
                    data: { Client_Name: clientudo, Depart: departudo },
                    dataType: "JSON",
                    success: function(response) {
                        console.log(response);
                    }
                });
                clearTimeout(timer);
            }
            if (emailtime) {
                var et1 = emailtime.split(':');
                hours = et1[0];
                mins = et1[1];
                //get your offset to wait value
                var timetarget = forceMidnightPageReloadGetTargetTime(hours, mins).getTime();
                var timenow = new Date().getTime();
                var offsetmilliseconds = timetarget - timenow;
                //if it isn't midnight yet, set a timeout.
                if (offsetmilliseconds >= hours++) {
                    var timer = setTimeout(function() { autoudoemail() }, offsetmilliseconds);
                }
            }
        });
    },
    error: function(jqXHR, textStatus, errorThrown) {
        swal("Oops", "We couldn't connect to the server!", "error");
    }
  });
 });

请指教 谢谢

这是默认行为。

您可以尝试:

  • 使用postMessage控制相同浏览器的窗口之间调用的可用性
  • 将关注点移到服务器端,并为您的电子邮件发件人使用锁定或排队方法。

问候,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM