Skip to content

HTTP 400 响应可能被当作正常媒体内容缓存 #199

Description

@Eosxx

HTTP 400 响应可能被当作正常媒体内容缓存

版本

3.1.0

问题描述

KTVHCDownload 对 HTTP 响应状态码的错误判断使用了 statusCode > 400

该判断不会拦截状态码恰好为 400 Bad Request 的响应。若 400 响应同时包含项目可接受的 Content-Type 和有效的 Content-Length,响应会继续进入正常下载流程,响应体可能被作为媒体数据写入缓存。

涉及位置

文件:

KTVHTTPCache/Classes/KTVHCDownload/KTVHCDownload.m

原判断:

if (HTTPURLResponse.statusCode > 400) {
    error = [KTVHCError errorForResponseStatusCode:task.currentRequest.URL
                                           request:task.currentRequest
                                          response:task.response];
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions