我正在使用HttpURLConnection包下载一个大文件。我能够这样做,但我在HttpURLConnection.connect和URL.openurlconnection方法之间有点混淆。
URL.openurlconnection返回HttpURLConnection。那么我可以重用这个对象吗?如果网络断开然后再连接,我想继续下载该文件。我可以直接调用connect(),还是必须重新配置连接?
链接到文档: HttpURLConnection:http://developer.android.com/reference/java/net/HttpURLConnection.html 网址:http://developer.android.com/reference/java/net/URL.html
由于
答案 0 :(得分:2)
openurlconnection与connect之间的区别?
它们是等价的。
URL.openurlconnection
返回HttpURLConnection
。那么我可以重用这个对象吗?如果网络断开然后再连接,我想继续下载该文件。我可以直接调用connect(),还是必须重新配置连接?
HttpURLConnection实例用于发出单个请求。它不能重复使用。如果要在失败后继续下载文件,则需要创建新连接。
如果您想避免再次传输之前获取的文件部分,可以使用"Range Retrieval Request"。但请注意,服务器端对范围检索的支持是可选的,因此客户端需要密切关注响应标头,以确定它是获取整个文件还是仅获取请求的范围。
相关问题: