网上的这个三个类库快要看吐了,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>
我只能说默默的转换吧
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终于可以插数据到数据库中了,哈哈,这个参数太简单了,我也觉得,来个嵌套的,好嘞,您看下期吧!