如何解决当标题中没有content-length时,加载进度栏在Firefox中如何工作
|| 我想知道当http标头中没有content-length时,网页加载进度栏如何在FF中工作。我在google.com上进行了检查,它没有发送内容长度的标头,但是进度栏可以正常工作。它是真实的进度条还是假的?如果这是假的,那我该如何建立一个类似的。 我正在构建一个iPhone应用程序,需要在其中构建类似的加载进度栏。 更新1 @Robot Woods-我刚刚在Google上搜索了\“ hello \”,但确实在底部看到了进度栏..现在我在Windows 7和FF 3.6.13上 这是我得到的响应头- 而且我没有看到任何内容长度标题... 如果内容长度不存在,FF如何生成进度条。解决方法
我不知道Firefox做什么,但如果是我,我将看以下内容:
初始页面通常加载很快。在它仍然存在时开始对其进行解析,并开始获取该页面需要的其他资源(css,js,图像等)。
使用进度条来描述支持文件将花费多长时间,并根据您之前下载的该类型其他文件的悲观平均值来估算页面。
许多程序在没有信息的情况下如何使用进度条来提供进度条,随着进度的临近,进度条会变慢。它永远不会到达尽头,但是只要数据继续输入,它就会继续移动。
,但是您要加载什么? FF只是这里进度条的一个示例吗?
如果要使用NSURLConnection连接到网络并显示其下载进度,则只需使用UIProgressView对象即可。请注意,我已经跳过了您的数据处理,只是编写了progress事件。
// NSURLConnection委托方法
-(void)连接:(NSURLConnection *)连接didReceiveResponse:(NSURLResponse *)响应{
// length是在外部声明的long long
长度= [响应ExpectedContentLength];
}
-(void)连接:(NSURLConnection *)连接didReceiveData:(NSData *)data {
NSNumber *收到= [NSNumber numberWithUnsignedInteger:[数据长度]];
NSNumber * total = [NSNumber numberWithLongLong:length];
浮动比率= [接收的floatValue] / [toplam floatValue];
[[YourUIProgressView progressBar] setProgress:ratio];
}
祝好运。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。