有没有办法调用一个调用php的ajax函数来提取文件并通过httpresponse发送进度所以我可以创建一个进度条?
我知道php不是一种多线程语言,所以我学习ruby并且我似乎有一些提取zip示例,但我不知道如何知道文件的进度,也许是一个新的线程? ??
所以任何解决方案或想法,无论是php还是ruby都非常受欢迎。
非常感谢
答案 0 :(得分:0)
您可以使用ruby ProgressBar gem和net/http
来执行此操作。
以下是演示代码:
url_base = ''
url_path = ''
@counter = 0
Net::HTTP.start(url_base) do |http|
response = http.request_head(URI.escape(url_path))
puts (response['content-length'].to_i/(1024*1024)).to_s << 'M'
pbar = ProgressBar.new("file name:", response['content-length'].to_i)
File.open("test.file", 'w') {|f|
http.get(URI.escape(url_path)) do |str|
f.write str
@counter += str.length
pbar.set(@counter)
end
}
end
pbar.finish
puts "Done."