如何在AFNetworking 2.0+中使用AFHTTPRequestOperationManager使用cookie?

 lp-阳光切割了记忆的角度 发布于 2023-01-29 19:53

正如众所周知,AFHTTPSessionManager在AFNetworking 2.0+支持Cookie.

但是,它可能AFHTTPRequestOperationManager在AFNetworking 2.0+支持cookies吗?

1 个回答
  • 是.AFNetworking使用基础URL加载系统,它可以开箱即用地处理cookie.

    您可以配置NSMutableURLRequest setHTTPShouldHandleCookies并使用NSHTTPCookieStorage它们来存储它们.

    在Objective-C中:

    NSArray *cookieStorage = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:url];
    NSDictionary *cookieHeaders = [NSHTTPCookie requestHeaderFieldsWithCookies:cookieStorage];
    NSMutableURLRequest *request = [myRequestSerializer requestWith…];
    for (NSString *key in cookieHeaders) {
        [request addValue:cookieHeaders[key] forHTTPHeaderField:key];
    }
    

    在Swift中:

    var request = NSMutableURLRequest() // you can use an AFNetworking Request Serializer to create this
    
    if let cookieStorage = NSHTTPCookieStorage.sharedHTTPCookieStorage().cookiesForURL(url) {
        for (headerField, cookie) in NSHTTPCookie.requestHeaderFieldsWithCookies(cookieStorage) {
            request.addValue(cookie, forHTTPHeaderField: headerField)
        }
    }
    

    2023-01-29 19:58 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有