iOS之AFNetworking添加代理服务器访问网络

网上找的如下, 但是kCFStreamPropertyHTTPProxyHost等常量已经被标为 Deprecated,会有警告

config.connectionProxyDictionary = @

    {

        @"HTTPEnable":@YES,

        (id)kCFStreamPropertyHTTPProxyHost:@"127.0.0.1",

        (id)kCFStreamPropertyHTTPProxyPort:@80,

        @"HTTPSEnable":@YES,

        (id)kCFStreamPropertyHTTPSProxyHost:@"127.0.0.1",

        (id)kCFStreamPropertyHTTPSProxyPort:@80

    };

写成字符串常量,也是可以的, 并且不会有警告

        NSString *ip = @"122.0.0.1";

        NSNumber *proxyPort = [NSNumber numberWithInt:8000];

        NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];

        config.connectionProxyDictionary = @

            {

                @"HTTPEnable":@YES,

                @"HTTPProxy" : ip,

                @"HTTPPort" : proxyPort,

                @"HTTPSEnable":@YES,

                @"HTTPSProxy": ip,

                @"HTTPSPort": proxyPort

            };

        AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithBaseURL:nil sessionConfiguration:config];

对于新版的 iOS 和 macOS,CocoaTouch 层级负责通讯的类是NSURLSession,如果需要通过代理访问网络,是需要指定其configuration属性,configuration的类型是NSURLSessionConfiguration。

将NSURLSessionConfiguration的connectionProxyDictionary属性指定为相应的 Dictionary。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容