网上的这个三个类库快要看吐了,Swifthttp,YYHRquest,AFnetWorking;http请求无非是调用这些类库中的put,get,post,delete,其中需要我们动脑筋的大概就是参数的传递了,
一: get与delete,方式一样,直接在url 后面拼接¶meter就可以了,如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 )
我只能说默默的转换吧
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对象怎么办?(一)全部内容,希望文章能够帮你解决swift 服务端要求json对象怎么办?(一)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)