我的解决方案中遇到js异步回调问题。这是req;
我做了什么:
创建了一个javascript函数 DownloadLink(),以递归方式调用 GetFilePath 方法,延迟时间为60秒。函数调用如下所示:
PageMethods.GetFilePath(UserId,onSuccess,onError);
OnSuccess和OnError是JS回调函数,当文件下载的URL可用时触发OnSuccess,此JS方法显示弹出窗口供下载,如果出现任何错误则调用OnError。
正常工作,直到发生以下情况。 当从GetFilePath方法调用OnSuccesss并且同时发生其他操作的回发时,OnSuccess调用永远不会进行,因为尚未加载新页面并且不向用户显示下载弹出窗口。
我该怎么做才能解决这个问题,以确保用户获得下载链接。
答案 0 :(得分:0)
除了每隔60秒进行一次检查外,检查最初加载页面时是否准备好下载链接。