Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 触发单向ajax调用_Javascript_Jquery_Ajax_Wcf - Fatal编程技术网

Javascript 触发单向ajax调用

Javascript 触发单向ajax调用,javascript,jquery,ajax,wcf,Javascript,Jquery,Ajax,Wcf,我有一个WCF服务,第一次调用它需要很长时间才能处理,然后将这些结果缓存在HttpRuntime.Cache中。为了初始化这个缓存,我想触发一个fire并忘记来自javascript的ajax调用 现在我在页面中有以下javascript: $.ajax({ type: 'GET', url: getServiceURL() + 'PrimeCacheAjax', contentType: 'application/json; charset=utf-8' }); 其中

我有一个WCF服务,第一次调用它需要很长时间才能处理,然后将这些结果缓存在
HttpRuntime.Cache
中。为了初始化这个缓存,我想触发一个fire并忘记来自javascript的ajax调用

现在我在页面中有以下javascript:

$.ajax({
    type: 'GET',
    url: getServiceURL() + 'PrimeCacheAjax',
    contentType: 'application/json; charset=utf-8'
});
其中,
PrimeCacheAjax
函数只执行一个伪调用来填充缓存

这种方法的唯一问题是,使用此ajax调用的页面是一种登录页面,它执行一些javascript,打开另一个窗口并关闭自己。当窗口在服务器响应之前自动关闭时,我在fiddler中看到一个已取消的请求。我担心这可能会导致ajax调用无法到达服务器,这可能吗


有没有办法指定(使用
$.ajax()
)不会有响应,或者这真的不重要?

唯一重要的时间是对服务器的请求是否未完成。在退出之前,您应该检查以确保调用的readyState值为2[aka sent]

我只会执行一个没有回调的调用,我不相信有一个属性允许F&F方法

对于一个非常短的ajax调用,如果需要,您可以尝试以下代码作为替代

$.get('URL');

只需执行一个
$.ajax
调用,而不进行回调,这正是您的代码要做的。等待
readyState==2
意味着等待来自服务器的响应头,这比OP希望等待的时间稍长,但我认为这个答案是使用现有的XHRAPI的最佳解决方案。知道ajax请求对服务器刷新缓冲区的反应吗?我以前曾在iframe中使用过这种方法,以获得类似的结果,在这种情况下,我刷新了一个等待readystate的页面,可能太长了,如果用户看到启动页面,他们会大叫“缺陷!”。我想我们只希望请求能够发出——在最坏的情况下,他们会等待缓存在第一次命中时填充更长的时间。