Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了swift 服务端要求json对象怎么办?(二)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

还记得上次post请求的参数格式吗? “{‘name’:dog','password':'123'}” 为什么要这么写呢? 一:网络编程,你需要一个利器抓包工具,Fiddler 这个就不错,我发现抓到的http contentType = "application/x-www-form-urlencoded" 额,好吧,我想要的是contentType=“application/json”,到YY

还记得上次post请求的参数格式吗?

{‘name’:dog','password':'123'}”

为什么要这么写呢?

一:网络编程,你需要一个利器抓包工具,fiddler 这个就不错,我发现抓到的httpcontentType = "application/x-www-form-urlencoded" 额,好吧,我想要的是contentType=“application/json”,到YYHrequest中看看那里设置,

 func serializerequestParameters() {
        contentType = "application/x-www-form-urlencoded"
        
        if (method == "GET") {
            if let queryURL = queryParametersURL() {
                url = queryURL
            }
        } else {
            body = serializedrequestBody()
        }
    }
    
啊,是这里,立马改成 contentType=“application/json”,好吧,跑起来看看,还是没什么卵用

二:那还是沿着原来的路线来吧

写个方法吧,干脆

 func ConvertType(parameters:Dictionary<String,String>)->String{
    
        var para:Dictionary<String,String> = parameters
        
        
        var paraStr:string="{"
        
        for (key,value) in para{
            paraStr = paraStr + "'" + key + "'" + ":" + "'" + value + "'" + ","
        }
        
        let rangeOfPara = Range(start: paraStr.starTindex,end: advance(paraStr.endIndex,-1))
        
        let finalStr = paraStr.subStringWithRange(rangeOfPara)
        
        var parameteRSStr:string = finalStr + "}"
        
        
        return parameteRSStr
    }


这样的话,你就可以吧字典转为需要的“{‘name’:dog','password':'123'}”类型了


如果有多个,多层,那你就需要不断的循环添加

 var strTest:[String]=[]

  var n:Int=5

  for i in 0…n{

       let parameter1:Dictionary<String,String> =  [“a”:”1” ]

        let parameter2:Dictionary<String,String>  =  [“a”:”1” ]

        strTest.insert("{“+self.ConvertType(parameter1)+ self.ConvertType

        (parameter2)+"}",aTindex: strTest.endIndeX)

                     }

println(strTest )

这样最后就生产出来服务器需要的格式了大致如下

"[{'a':{'aa':'1'},'b':[{'a':'1'},{}]},{},{}]"

三:总结:

其实主要的思路就是:先看你要什么格式,比如我要的就是{‘name’:dog','password':'123'}”这种类型,然后再利用for key value 的方法来变量字典中的值,给他拼接成你想要的最后格式

大佬总结

以上是大佬教程为你收集整理的swift 服务端要求json对象怎么办?(二)全部内容,希望文章能够帮你解决swift 服务端要求json对象怎么办?(二)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。