生活随笔
收集整理的這篇文章主要介紹了
IOS开发基础之使用AFNetworking框架下载服务器资源图片
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
IOS開(kāi)發(fā)基礎(chǔ)之使用AFNetworking框架下載服務(wù)器資源圖片
info.plist加入這句
<key>NSAppTransportSecurity
</key>
<dict><key>NSAllowsArbitraryLoads
</key><true/>
</dict>
服務(wù)器這里我們選擇是Java 的 Tomcat 服務(wù)器.Net 服務(wù)器或者PHP服務(wù)器亦可,或者node.js
nginx 服務(wù)器都可以 docker 容器服務(wù)器都可以,看你自己需求,也做了解析html 網(wǎng)頁(yè) 數(shù)據(jù)到控制臺(tái)。
#import "ViewController.h"
#import "AFHTTPRequestOperationManager.h"
#import "AFHTTPSessionManager.h"
@interface ViewController
()<NSXMLParserDelegate
>@end@implementation ViewController
-(void)getTestHtmlFromServer
{AFHTTPSessionManager
*manger
= [AFHTTPSessionManager manager
];manger
.responseSerializer
= [AFHTTPResponseSerializer serializer
];NSString
*getUrlStr
= @"http://www.baidu.com";NSString
*getUrlStr1
= @"http://localhost:8080/MJServer/";[manger GET
:getUrlStr parameters
:nil success
:^(NSURLSessionDataTask
*task
, id responseObject
) {NSString
*html
= [[NSString alloc
] initWithData
:responseObject encoding
:NSUTF8StringEncoding
];NSLog(@"%@",html
);} failure
:^(NSURLSessionDataTask
*task
, NSError
*error
) {NSLog(@"%@",error
);}];
}
-(void)testGetSession
{NSString
*strUrl
= @"http://localhost:8080/MJServer/video";[[AFHTTPSessionManager manager
] GET
:strUrl parameters
:nil success
:^(NSURLSessionDataTask
*task
, id responseObject
) {NSLog(@"%@",responseObject
);} failure
:^(NSURLSessionDataTask
*task
, NSError
*error
) {NSLog(@"%@",error
);}];
}-(void)downLoadFromServer
{NSString
*downPath
= @"http://localhost:8080/MJServer/resources/images/minion_04.png";NSURL
*url
= [NSURL URLWithString
:downPath
];NSURLRequest
*request
= [NSURLRequest requestWithURL
:url
];NSProgress
*progress
= nil
;[[[AFHTTPSessionManager manager
] downloadTaskWithRequest
:request progress
:&progress destination
:^NSURL
*(NSURL
*targetPath
, NSURLResponse
*response
) {NSString
*path
=[[NSSearchPathForDirectoriesInDomains(NSCachesDirectory
, NSUserDomainMask
, YES
) lastObject
] stringByAppendingPathComponent
:response
.suggestedFilename
];NSURL
*url
= [[NSURL alloc
] initFileURLWithPath
:path
];NSLog(@"targetPath=%@",targetPath
);return url
;} completionHandler
:^(NSURLResponse
*response
, NSURL
*filePath
, NSError
*error
) {NSLog(@"%@",filePath
);}] resume
];[progress addObserver
:self forKeyPath
:@"fractionCompleted" options
:NSKeyValueObservingOptionNew context
:nil
];
}
-(void)observeValueForKeyPath
:(NSString
*)keyPath ofObject
:(id
)object change
:(NSDictionary
<NSKeyValueChangeKey
,id
> *)change context
:(void *)context
{if([object isKindOfClass
:[NSProgress class
]]){NSLog(@"%@",change
);NSProgress
*progress
= object
;NSLog(@"%@",progress
.localizedDescription
);NSLog(@"%@",progress
.localizedAdditionalDescription
);NSLog(@"completedUnitCount = %zd",progress
.completedUnitCount
);NSLog(@"%f",progress
.fractionCompleted
);NSLog(@"totalUnitCount = %zd",progress
.totalUnitCount
);NSLog(@"%@",[NSThread currentThread
]); }
}- (void)viewDidLoad
{[super viewDidLoad
];
}- (void)touchesBegan
:(NSSet
<UITouch
*> *)touches withEvent
:(UIEvent
*)event
{[self getAndParseXML
];
}
@end
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)
總結(jié)
以上是生活随笔為你收集整理的IOS开发基础之使用AFNetworking框架下载服务器资源图片的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。