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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions