网络请求方式:Delete
Delete方法就是通过http请求删除指定的URL上的资源啦,Delete请求一般会返回3种状态码:
200 (OK) - 删除成功,同时返回已经删除的资源
202 (Accepted) - 删除请求已经接受,但没有被立即执行(资源也许已经被转移到了待删除区域)
204 (No Content) - 删除请求已经被执行,但是没有返回资源(也许是请求删除不存在的资源造成的)
首先采用系统的NSURLConnection的方式进行delete方式请求 // 指定一个网址 NSString *str = @"http://project.lanou3g.com/teacher/yihuiyun/lanouproject/activitylist.php"; // 把网址转换成NSURL NSURL *url = [NSURL URLWithString:str]; // 创建一个请求 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; // 把请求方式设置成DELETE,默认是GET [request setHTTPMethod:@"DELETE"]; // 进行一步请求 [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) { // 对返回的数据进行JSON解析 NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; // 打印结果 NSLog(@"%@", dic); }];
采用AFN进行delete数据请求: AFHTTPRequestOperationManager *manage = [AFHTTPRequestOperationManager manager]; // 采用默认的DELETE请求方式 [manage DELETE:@"http://project.lanou3g.com/teacher/yihuiyun/lanouproject/activitylist.php" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { // 打印返回的结果 NSLog(@"%@", responseObject); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { // 打印错误信息 NSLog(@"%@", error); }];
采用NSURLSession的方式进行请求: NSString *strURL = @"http://project.lanou3g.com/teacher/yihuiyun/lanouproject/activitylist.php"; NSURL *url = [NSURL URLWithString:strURL]; NSMutableURLRequest *reqest = [NSMutableURLRequest requestWithURL:url]; [reqest setHTTPMethod:@"DELETE"]; // 创建一个session对象 NSURLSession *session = [NSURLSession sharedSession]; // 创建一个任务 NSURLSessionTask *task = [session dataTaskWithRequest:reqest completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; NSLog(@"%@", dic); }]; // 执行任务 [task resume];
到这大家应该发现,DELETE和正常的GET请求没有区别,只不过要制定一下请求方式,在日常的工作当中,DELETE并不常用