Tôi đã nhìn thấy rất nhiều mã, kể cả mẫu SimpleURLConnections của Apple, chỉ đơn giản là truyền bất kỳ NSURLResponse nào tới NSHTTPURLResponse. Nếu nó luôn là NSHTTPURLResponse tại sao NSURLConnections không trả về NSHTTPURLResponse?Khi nào một NSURLResponse không phải là NSHTTPURLResponse?
Tôi lo lắng rằng nếu tôi chỉ đơn giản là từ chối phản hồi, tôi sẽ giới thiệu mã lỗi. Ví dụ:
Ví dụ, bạn có thể thực hiện việc này mà không kiểm tra isKindOfClass không?
- (NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse
{
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*)redirectResponse;
// do stuff
}
Mã phản hồi HTTP phải dài 3 chữ số, nếu bạn nhận được nhiều hơn độ dài đó, không phải là mã phản hồi HTTP hợp lệ. –
Tôi đề xuất thực hiện kiểm tra kiểu tốt hơn chỉ là diễn viên, tôi có nhiều trường hợp sự cố liên quan đến NSURLResponse KHÔNG phải là NSHTTPURLResponse mặc dù tôi chỉ xử lý các kết nối HTTP. – Psycho