JXHTTP 已不活跃维护。我们将逐步淘汰它于 TMTumblrSDK
JXHTTP 是 iOS 和 OS X 的网络库。它利用操作队列和 GCD 为 Cocoa 的内置 NSURLConnection
对象提供强大的封装,增加许多有用特性,如块响应对象和跨多个请求的进度跟踪。它力求尽可能轻量级和易于阅读,易于使用或根据高级行为进行自定义。
要开始使用,只需下载最新的标签并将 JXHTTP
文件夹拖放到您的 Xcode 项目中。没有外部依赖项或特殊的编译器标志,只需在方便位置添加 #import "JXHTTP.h"
即可。还包括完整的文档集以在 Xcode 或 Dash 中使用,并在 jxhttp.com 上提供在线访问。JXHTTP 也可作为 CocoaPod 提供。
JXHTTP 需要 iOS 5.0 或 OS X 10.7 或更高版本。
JXHTTPOperation 比使用没有操作封装的纯 NSURLConnection
提供了许多优点
JXHTTP 现已准备好用于生产环境,并且目前为 Tumblr SDK 提供支持;当您阅读此段落时,已经执行了成千上万的请求!
请参见包含的 示例项目 以了解 iOS 中实际使用案例。
JXHTTPOperation *op = [JXHTTPOperation withURLString:@"https://encrypted.google.com/"];
op.didFinishLoadingBlock = ^(JXHTTPOperation *op) {
NSLog(@"%@", op.responseString);
};
[[JXHTTPOperationQueue sharedQueue] addOperation:op];
JXHTTPOperation *op = [JXHTTPOperation withURLString:@"https://encrypted.google.com/"];
[op startAndWaitUntilFinished];
NSLog(@"%@", op.responseString);
NSURL *postURL = [NSURL URLWithString:@"https://web.site/api/POST"];
NSDictionary *postParams = @{ @"make": @"Ferrari", @"model": @"458 Italia" };
JXHTTPOperation *op = [[JXHTTPOperation alloc] initWithURL:postURL];
op.requestBody = [[JXHTTPFormEncodedBody alloc] initWithDictionary:postParams];
op.requestCachePolicy = NSURLRequestReloadIgnoringLocalAndRemoteCacheData;
op.responseDataFilePath = @"/tmp/downloaded_data";
op.trustedHosts = @[ postURL.host ];
op.performsBlocksOnMainQueue = YES;
op.didSendDataBlock = ^(JXHTTPOperation *op) {
NSLog(@"%lld bytes uploaded so far", op.bytesUploaded);
};
[[JXHTTPOperationQueue sharedQueue] addOperation:op];
JXHTTP 由 Justin Ouellette 创建。
如果有问题,请通过以下邮箱 [email protected] 联系。