我对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