javascript - Ajax 文件不存在

标签 javascript jquery ajax file activexobject

我想将文件从一个目录移动到另一个目录。

我获取了所有文件以及每个文件的大小,但是当我通过ajax验证文件是否存在时,总是会出现错误结果。我没有太多使用ajax,但是如果我得到了我需要的所有信息,为什么我无法移动文件?

这是我使用的代码:

moveErrorFiles('C:/Users/romama/Desktop/HMI Versions/V 0.5/web/css');

function moveErrorFiles(fileDir){
    var fileSysObj, file, folder, fileCounter, currentFile;

    fileSysObj = new ActiveXObject("Scripting.FileSystemObject");
    folder = fileSysObj.GetFolder(fileDir);
    fileCounter = new Enumerator(folder.files);

    for (; !fileCounter.atEnd(); fileCounter.moveNext()) {
        currentFile = fileCounter.item();

        file = fileSysObj.GetFile(currentFile)
        checkFileExist(file, file.Size);
    }
}

function checkFileExist(fileToMove, size) {
    $.ajax({
        url: fileToMove,
        type: 'HEAD',
        contentType: 'image/png',
        dataType: 'text',
        cache: false,
        error: function() {
            console.log(fileToMove + "\nthis file doesn't exist... Size = " + size);
        },
        success: function() {
            console.log(fileToMove + '\nthis file exists... Size = ' + size);
        }
    });
}

这是 IE 控制台中的输出:

C:\Users\romama\Desktop\HMI Versions\V 0.5\web\css\style.css
this file doesn't exist... Size = 13823
C:\Users\romama\Desktop\HMI Versions\V 0.5\web\css\styleSmall.css
this file doesn't exist... Size = 13634

最佳答案

这违反了浏览器的规则。

您可以读取元数据,但无法修改/删除文件。

正如里奇所说,这将是一个安全漏洞。

想象一下您访问网站 www.goofup.com,只是为了知道该网站删除了您的操作系统。

你肯定不会想要这样的。

关于javascript - Ajax 文件不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50605815/

相关文章:

javascript - 如何使用 JavaScript 使 Css 类消失和出现

javascript - 循环遍历数组 Javascript

jquery - 更改触发文本

jquery - 加载新内容时 bootstrap-popover 不会隐藏

php - 最简单的表单提交而不重定向?

ajax - 在 ajax 可以做的地方使用 websocket/socket.io 有什么缺点?

javascript - 如何创建下拉列表来选择月份和年份

javascript - CKEditor 5 : Unable to add multiple attributes to 'img' tag

javascript - for循环使用img src时超出限制

php - 通过 cURL 发送数据而无需重新加载页面