网络请求AFNetworking

简介: 网络请求AFNetworking

简述:网络请求是大家都会遇到的问题,以及图片或者文字的上传,下面详细的讲解,帮助大家解决数据交互的问题,喜欢的最后记得点赞!


  1. 数据的交互无非两种:数据请求数据上传


(1)用cocopods导入AFNetworking框架

pod 'AFNetworking', '~> 3.1.0'


再导入 AFNrequest  密码: bwqf

有时候打印出来的汉字无法直观的看到,那么我们就把它 转汉字,密码: ry2j导入,在工程里面运行一下就好了

(2)在项目里面导入下面的两个类

#import "AFNetworking.h"

#import "SXHTTPEngine.h"

在需要请求的地方输入

//这里放需要请求的接口:一般分页自己设置

NSString *url = http://192.168.80.254/jiekou/index.php?g=home&m=index&a=nearadlist"

//在子线程进行数据的请求

dispatch_async(dispatch_get_global_queue(0, 0), ^{

/*
     网络数据的请求
     */
    [[SXHTTPEngine shareManager]POST:url params:nil success:^(id responseObject) {
        //NSLog(@"====%@",responseObject);对数据解析就好
        /*
         刷新主线程(刷表)
         */
        dispatch_async(dispatch_get_main_queue(), ^{
            [self.tableView reloadData];
        });
    } failure:^(NSError *error) {
        NSLLog(@"加载失败");
    }];
});
  • 2.下面讲解数据的上传(在此先不讲解关于图片的上传,后面专门讲解)
上传数据的接口
  NSString *url = [NSString stringWithFormat:@"%@/jiekou/index.php?g=home&m=index&a=jdorder",DFTurl];
  AFHTTPSessionManager *manger = [AFHTTPSessionManager manager];
  manger.responseSerializer = [AFHTTPResponseSerializer serializer];
  manger.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];
 //导航栏上的菊花(让状态栏显示网络等待的标志
 [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
  //这里放要上传的字段的内容
  NSDictionary *parameter = @{@"userid":@"76"};
  [manger POST:url parameters:parameter constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {
//formData用来存放视频或者照片等等
 } progress:^(NSProgress * _Nonnull uploadProgress) {
 } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
NSLog(@"%@",responseObject);
NSLog(@"上传成功");
做一些上传成功后的跳转工作
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"%@",error);
}];
  • 3.下面讲解一下关于图片的上传,我们上传的图片可能不止一张,在此以数组的额形式上传


把上面的一段数据摘下来单独讲解图片的问题 //UploadArr是图片数组

[manager POST:str parameters:parameter constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {
        NSLog(@"数组里面的内容=%@",UploadArr);
        NSLog(@"%ld--%@",UploadArr.count,UploadArr);
        for (int i = 0; i < UploadArr.count; i++) {
        // 时间转化字符串形式
        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
        formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
        NSString *fileName = [NSString stringWithFormat:@"%@%d.png",[formatter stringFromDate:[NSDate date]],i];
        NSLog(@"%@",UploadArr[i]);
        /**
         * 设置需要上传的文件
         * UIImagePNGRepresentation(_iconView.image)-》将图片转成NSData
         * 第一个参数是需要上传的文件
         * 第二个是后台规定的参数名
         * 第三个文件名,但是后台一般不用,所以意义不大
         * 第四个文件类型
         */
        [formData appendPartWithFileData:UIImagePNGRepresentation(UploadArr[i]) name:[NSString stringWithFormat:@"uploadFile%d",i] fileName:fileName mimeType:@"image/png"];
        NSLog(@"%ld--%@",UploadArr.count,UploadArr);
       }


目录
相关文章
|
XML JSON 程序员
|
XML JSON 数据格式
iOS开发网络数据之AFNetworking使用
<p class="p1" style="color:rgb(51,51,51); font-family:Arial; font-size:14px; line-height:26px"> 如何选择AFNetworking版本</p> <p class="p2" style="color:rgb(51,51,51); font-family:Arial; font-size:14px
1677 0
|
SQL 监控 安全
网络安全与信息安全:漏洞、加密与安全意识
随着互联网的迅猛发展,网络安全和信息安全问题日益受到关注。本文深入探讨了网络安全漏洞、加密技术以及提高个人和组织的安全意识的重要性。通过分析常见的网络攻击手段如缓冲区溢出、SQL注入等,揭示了计算机系统中存在的缺陷及其潜在威胁。同时,详细介绍了对称加密和非对称加密算法的原理及应用场景,强调了数字签名和数字证书在验证信息完整性中的关键作用。此外,还讨论了培养良好上网习惯、定期备份数据等提升安全意识的方法,旨在帮助读者更好地理解和应对复杂的网络安全挑战。
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
496 17
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
376 10
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的代码示例。通过阅读本文,您将了解到如何保护自己的网络安全,以及如何提高自己的信息安全意识。
364 10

热门文章

最新文章