iOS Swift moya框架发送数组作为请求参数(GET/POST)

请讲解下,iOS Swift moya框架发送数组作为请求参数(GET/POST)
最新回答
守望

2024-10-14 06:31:25

Swift中网络请求常用moya框架,但是这个框架有个缺点,不支持数组作为请求参数。也就是 parameters 只能传字典类型,不管是GET请求还是POST请求都是如此

多数情况下不会有这样的需求,但是有时候后台就开发出这样的接口了,安卓那边没问题,那我们iOS也不好说不行。所以还是得想办法支持一下。
刷了一下GitHub里面的issue,找到了解决办法:

POST请求:
Moya 使用字典作为JSON数据的根容器。但是有时候您需要将JSON数组作为根元素发送。这儿有一个解决方案,即通过编写您自己的参数编码 :

定义一个struct或者一个class:

配置target:

这将会把.api接口的数据作为JSON数组["Yes", "What", "Abc"]发送。

GET请求:

配置target: