是否可以在不使用方法的情况下修改 NSHTTPURLResponse 上的 header
initWithURL:statusCode:HTTPVersion:headerFields:
创建一个新的自定义 NSHTTPURLResponse
Best Answer-推荐答案 strong>
响应对象返回一个名为 allHeaderFields 的 NSDictionary。如果您可以直接修改该字典,那将是理想的,但它不是 NSMutableDictionary。这意味着您只能做以下两件事之一:
创建当前 allHeaderFields 字典的可变副本,并在新的 NSHTTPURLResponse 中使用它(我知道你说过你不想创建新的 NSHTTPURLResponse,但它是最简单的解决方案,您从原始响应中获取其他值,创建一个使用原始 allHeaderFields 的值初始化的 NSMutableDictionary,编辑您需要的字段以进行欺骗,然后插入到新的响应中。)
否则,您可以实现 NSHTTPURLResponse 的自定义子类,该子类可以修改 allHeaderFields 对象。很好的答案,详细说明了如何做到这一点的基础知识here ,但它似乎有点迂回。仅当您需要覆盖大量 HTTP header 字段时才使用此选项。
关于ios - 修改 NSHTTPURLResponse 中的 header ,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/11463840/
|