來自 tumblr 的 iOS 和 OS X 上的網絡連接庫:JXHTTP
JXHTTP 是來自 tumblr 的 iOS 和 OS X 上的網絡連接庫。它利用操作隊列和GCD對Cocoa的內置NSURLConnection對象提供了強大的包裝,加入許多有用的功能如:塊響應對象和跨越多個請求過程跟蹤。它致力于成為盡可能輕量級和可讀性,使它更易于使用或自定義高級的行為。
示例
Asynchronous
JXHTTPOperation *op = [JXHTTPOperation withURLString:@"https://encrypted.google.com/"];
op.didFinishLoadingBlock = ^(JXHTTPOperation *op) { NSLog(@"%@", op.responseString);
};
[[JXHTTPOperationQueue sharedQueue] addOperation:op]; Synchronous
JXHTTPOperation *op = [JXHTTPOperation withURLString:@"https://encrypted.google.com/"]; [op startAndWaitUntilFinished]; NSLog(@"%@", op.responseString);
Complex
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]; 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!