Javascript 用于外部异步文件生成的HTML/JS检查

Javascript 用于外部异步文件生成的HTML/JS检查,javascript,html,svg,promise,fs,Javascript,Html,Svg,Promise,Fs,我想在HTML/js应用程序中显示由第三方应用程序生成的svg。我遇到的问题是svg生成是异步的,当HTML尝试加载svg时,文件可能丢失(当时未写入)或不完整(正在写入)。 我查看了Promise,但没有任何检查外部文件可用性的示例。 有什么想法吗?因为您在评论中提到,您可以通过外部url访问svg: 您可以使用JavaScript/Jquery检查是否存在外部文件(只要您可以通过http访问) 所以你可以做这样的检查。如果找到文件,则更新图像src,如果没有,则稍后重试: 下面是一个小示例实

我想在HTML/js应用程序中显示由第三方应用程序生成的svg。我遇到的问题是svg生成是异步的,当HTML尝试加载svg时,文件可能丢失(当时未写入)或不完整(正在写入)。 我查看了Promise,但没有任何检查外部文件可用性的示例。
有什么想法吗?

因为您在评论中提到,您可以通过外部url访问svg:

您可以使用JavaScript/Jquery检查是否存在外部文件(只要您可以通过http访问)

所以你可以做这样的检查。如果找到文件,则更新图像src,如果没有,则稍后重试:

下面是一个小示例实现:

//example retry delay of 3 seconds
var delay = 3000;
var url = "http://www.doma.in/path/yourimg.svg";

function tryUpdate(){
    $.get(url)
        .done(function() { 
            //your picture exists
            updateImgSrc();
        }).fail(function() { 
            // picture doesn't exist yet -> retry after time
            setTimeout(tryUpdate, delay);
        })
}

到目前为止,您(确切地)是如何访问该文件的?我从html调用外部命令。完成后,我通过JQuery和外部svg url更新img src属性。我需要设置一个时间间隔,以确保外部文件正常。