网络请求
最近仿写天气预报才开始接触网络请求,在这里做一个小总结。这里使用请求某个城市的天气情况做例。
创建网络请求五个步骤
- 创建请求地址
- 创建请求类
- 创建会话
- 根据会话创建任务
- 启动任务
代码:
创建类,定义所需属性,继承协议。
@interface AddCityViewController : UIViewController
<
NSURLSessionDelegate
>
// 接收城市ID
@property (nonatomic, strong) NSString* cityID;
// 接收返回的数据
@property (nonatomic, strong) NSMutableData* data;
@property (nonatomic, strong) NSDictionary* mainDictionary;
@end
创建网络请求
- (void) createUrl {
// 地址(我这里的cityID是外部传进来的字符串,代表查询城市的id)
NSString* urlString = [NSString stringWithFormat:@"https://v0.yiketianqi.com/api?appid=17628316&appsecret=QrgKcZ8B&version=v9&cityid=%@&unescape=1", _cityID];
// 对中文和空格字符编码解码
urlString = [urlStrin