美文网首页
iOS中使用AFN传递字符串参数

iOS中使用AFN传递字符串参数

作者: 记忆不为 | 来源:发表于2017-03-17 09:20 被阅读0次

最近公司要做AES加密,然后后台要我们将参数加密后传递过去.后台接收的是json格式数据,并且要加一些header信息.

//实例化AFHTTPSessionManager
manager = [AFHTTPSessionManager manager];
//说明请求格式为json格式
manager.requestSerializer = [AFJSONRequestSerializer serializer]; 
//说明接收格式为json格式
manager.responseSerializer = [AFJSONResponseSerializer serializer];
//与后台约定好可接收的Content-Type
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",nil];
//增加头部
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];

将这些封装到网络工具类里
但是在使用时,由于加密后的参数是一段字符串,而我们说明了requestSerializer是json格式的,所以如果我们传递字符串过去会导致奔溃

//打断点后奔溃的原因
[mutableRequest setHTTPBody:[NSJSONSerialization dataWithJSONObject:parameters options:self.writingOptions error:error]];

主要是因为当我们说明了请求为json时,AFN内部会帮我们处理转为json格式的data,所以我们就要实现一个方法

[manager.requestSerializer setQueryStringSerializationWithBlock:^NSString * _Nonnull(NSURLRequest * _Nonnull request, id  _Nonnull parameters, NSError * _Nullable __autoreleasing * _Nullable error) {
        //在这里面对parameters进行处理
        return 处理后的参数;
    }];

这就是在请求为json格式的时候传递字符串奔溃的方法

相关文章

  • iOS中使用AFN传递字符串参数

    最近公司要做AES加密,然后后台要我们将参数加密后传递过去.后台接收的是json格式数据,并且要加一些header...

  • 路由规则中定义参数

    一、使用query方式传递参数通过URL后面查询字符串传递参数给路由,路由对象可以通过$route.query对象...

  • Request库传参及编码相关

    一般在GET请求中,我们使用查询字符串(query string)来进行参数传递,在requests库中使用方法如...

  • Flask中url详解

    接收用户传递的参数 第一种:使用path的形式(将参数嵌入到路径中)。 第二种:使用查询字符串的方式,就是通过”?...

  • iOS GET请求常见错误之中文参数

    GET 请求参数中带中文用AFN会导致崩溃,需要把URL参数中的中文进行UTF-8转码iOS 7 之前用 NSSt...

  • 【Android】OkHttp3总结与封装

    开始使用 在app目录下的build.gradle中添加依赖: GET方法 GET参数的传递可以使用拼接字符串的方...

  • AFN框架使用整理

    1.AFN框架基本使用 1 AFN内部结构AFN结构体NSURLConnection(iOS9.0废弃了)AFUR...

  • 【微信小程序】页面跳转并通过url传参

    《页面跳转并通过url传参》 传递字符串 1.传递参数 当传递的参数中包含"&"等特殊字符时,url会解析出错。所...

  • Kotlin艺术探索之参数和异常

    参数传递 默认参数的使用 可以在方法的参数中设置值作为它的默认参数值 使用默认参数在调用的时候就可以不传递参数 具...

  • 指针、引用还是传值

    Go 默认使用按值传递来传递参数,也就是传递参数的副本。函数接收参数副本之后,在使用变量的过程中可能对副本的值进行...

网友评论

      本文标题:iOS中使用AFN传递字符串参数

      本文链接:https://www.haomeiwen.com/subject/uwnsnttx.html