swift 服務端要求json對象怎麼辦?(一)

來源:互聯網
上載者:User

標籤:

網上的這個三個類庫快要看吐了,SwiftHttp,YYHRquest,AFnetWorking;http請求無非是調用這些類庫中的put,get,post,delete,其中需要我們動腦筋的大概就是參數的傳遞了,


 一: put與delete,方式一樣,直接在url 後面拼接&parameter就可以了,如http://10.111.11.11:8088/api/?sqlname=GET_ALL&name=dog&password=123

就可以了,當然也可以用類庫提供的字典來放參數

//使用的時swiftHttp

var request = HTTPTask()          var parameters:Dictionary<String,String>=["name":"dog","password":"123"]request.GET("http://10.111.11.11:8088/api/?sql=GET_ALL", parameters: nil, success: {(response: HTTPResponse) -> Void in if response.responseObject != nil { println("success") } },failure: {(error: NSError, _) -> Void in println("false")})

</pre><pre>
二:post 和put 怎麼辦?如果伺服器不認識字典型的怎麼辦?(oh ,what a fuck day )

我只能說默默的轉換吧

 <pre name="code" class="objc"> public func POST(url: String, parameters: Dictionary<String,AnyObject> , success:((HTTPResponse) -> Void)!, failure:((NSError, HTTPResponse?) -> Void)!) {                        //var opt =            var opt = self.create(url, method:.POST, parameters: parameters,success: success,failure: failure)                if opt != nil {            opt!.start()        }    }    


這個是swiftHttp 中的post 方式,看著蠻好的,但是這個字典型的參數伺服器不認識他只要json 類型的,好吧,山不轉水轉,水不轉人轉,我不用這個了

三:我要用YYHRequest這個類庫試試,(看起來好山寨的名字,不過好處就是你可以改造他)

func post(strPara:[String],strUserName:String,strPassword:String){          let request = YYHRequest(url: NSURL(string:"http://10.11.11.1:8088/api/?sql=UPDATE1"  var parameterStr:String = "" request.method = "POST"  //下面這種寫法是demo給出來的,然後並沒有什麼卵用,伺服器還是不認識      request.parameters["name"] ="dog"       request.parameters["password"] ="123"//這麼寫伺服器真的認識,就是覺得這是json ,我也是醉了        parameterStr="{'name':'dog','password':'123'}"        request.parameters[""] = parameterStr                request.completionHandler = {response, data, error in                   }       request.loadRequest()                   }


額,好吧,用完上面的post終於可以插資料到資料庫中了,哈哈,這個參數太簡單了,我也覺得,來個嵌套的,好嘞,您看下期吧!


swift 服務端要求json對象怎麼辦?(一)

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.