【问题标题】:Getting a partial response from a lQuery ajax request for progress bar?从进度条的 lQuery ajax 请求中获得部分响应?
【发布时间】:2016-04-25 16:11:44
【问题描述】:

我使用 ajax 请求调用 php 页面,然后 php 页面调用 python 脚本,python 脚本将完成的工作百分比写入 txt 文件,当然还会计算需要的内容。

在我的代码中,只有在 ajax 请求完成后才能访问 txt 文件,但这没有意义,因为它总是 100%。

如果带有进度的 txt 可以说:http://domain.com/progress.txt 在请求期间,我将如何读取数据。

$.ajax({
xhr: function() {
        var xhr = new XMLHttpRequest();
		xhr.open('GET', "http://domain.com/pr.txt", true);
		xhr.send();
		var pro_perc = xhr.responseText;;
		alert(pro_perc);
		move1(pro_perc);
       return xhr;
    },
type: "POST",
url: "http://domain.com/req.php",
data: reqdata,
cache: false,
success: function(html) {

var values = html.split('[mydata]');
var mydata = values[1];

});

【问题讨论】:

    标签: javascript jquery ajax


    【解决方案1】:

    其实你可以在这里找到答案 JQuery ajax progress via xhr

    或者你可以使用这个

    var interval;
       $.ajax({
            beforeSend: function(){
                interval = setInterval(function(){
                        $.get("http://domain.com/pr.txt").done(function(progress){
                            console.log(progress)
                        })
                    },10);
            },
            type: "POST",
            url: "http://domain.com/req.php",
            data: reqdata,
            cache: false,
            success: function(html) {
                clearInterval(interval);
                var values = html.split('[mydata]');
                var mydata = values[1];
            }
       });
    

    【讨论】:

    • 谢谢,我阅读了一些答案,但没有得到真正的“evt”。我需要使用 XMLHttpRequest 从 txt 文件中读取如何使这成为我不知道的事件...
    • evt 它的事件对象,你可以将它推送到 console.log() 并查看这个对象。实际上,您正在逐字节读取 txt 文件,并且 evt.total = 文件大小,并且 evt.loaded 其当前大小
    • post 请求没有读取任何文件...它处理我通过 post 请求发送的文本 - 这不是上传进度条上传问题。
    • 无论如何,请检查我添加的 hrh 部分的代码,但它似乎没有读取我的文件 - 行:xhr.responseText
    • 它正在工作,但它是一个无限循环,它应该在成功后停止:收到响应。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2011-02-13
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多