ios - Alamofire中请求参数无名称的问题

查看:177
本文介绍了ios - Alamofire中请求参数无名称的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

后台 Api 中单个参数的时候没有指定参数名,而 Alamofire 中的 parameters 是字典类型的。我尝试着 param = ["": "参数"] 发现是不行的。
在 AFN 中因为参数是 id 类型的,所以可以直接将一个字符串扔进去。求解 Alamofire 中怎么做 T T (后台有很多这样的 Api,安卓那边都可以,所以没必要改 Api 了。。。。)

解决方案

scheme://host/path?key=value&key=value
在get方式中 你传入的parameters到后边都是处理成上边的key=value这样的形式
服务器拿到这样的url 然后根据key去取相应的value

其实AFN在处理NSString的param时url为scheme://host/path?null=value
服务器当且仅当在单个参数可以这样处理吧 反正拿到的value就是需要的和key无关

  1. 从上边的逻辑分析 服务器处理url有2种情况 一种只要只有一个value就直接取它的值 那么你随便给个key试试看好了 另一种只在key为null而value不为null下才触发那么 用param = @{[NSNull null]: param} 试试看 还不行就去看看代码 alamofire是怎么把parameters处理成query的 查看下完整的url 确定是否是alamofire过滤了
    (ps 没写过服务器代码和alamofire 很多是猜测 仅供参考)

这篇关于ios - Alamofire中请求参数无名称的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆