我对iOS编程还很陌生,尤其是在涉及Web服务时。我正在出于学术目的开发应用程序,并且需要与服务器进行通信,当前使用AFNetworking2和ReSTLer / php,当涉及到GET方法时,一切正常。但是我无法上传任何内容。

在github支持站点上阅读了数小时,在stackoverflow上,几乎所有用于上传图像的示例/问题(还有很多)都使用此行:

AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"http://server"]];

我的sharedClient确实有一个Client类,它是AFHTTPSessionManager的子类。但是所有示例都将此AFHTTPClient与initWithURL以及其他我无法找到的类似AFJSONRequestOperation的类一起使用。

通常,它说我应该创建一个AFHTTPClient的单例子类,但是在任何地方都找不到它。有些链接甚至将我发送到了官方的github存储库,但现在不再可用。
所以我的问题是,我应该在哪里获得有关AFHTTPClient的更多信息,有人可以向我指出如何创建一个或至少了解其功能的教程。

干杯

最佳答案

在AFNetworking 2.0中,AFHTTPClient已由AFHTTPRequestOperationManager / AFHTTPSessionManager代替。我建议您参考example in git by them。 Git克隆并在XCode中打开。它应该可以帮助您。那是最新的例子。

如果要使用AFHTTPClient,即1.x代码。这是git link to the branch。荚规格将是

pod'AFNetworking','〜> 1.3.3'

在2.0 AFNetworking中,您可以像这样创建一个单例客户端。

接口

@interface AFAppDotNetAPIClient : AFHTTPSessionManager

+ (instancetype)sharedClient;

@end

实作
#import "AFAppDotNetAPIClient.h"

static NSString * const AFAppDotNetAPIBaseURLString = @"https://alpha-api.app.net/";

@implementation AFAppDotNetAPIClient

+ (instancetype)sharedClient {
    static AFAppDotNetAPIClient *_sharedClient = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        _sharedClient = [[AFAppDotNetAPIClient alloc] initWithBaseURL:[NSURL URLWithString:AFAppDotNetAPIBaseURLString]];
        [_sharedClient setSecurityPolicy:[AFSecurityPolicy policyWithPinningMode:AFSSLPinningModePublicKey]];
    });

    return _sharedClient;
}

@end

08-05 22:35