iOS NSURLSession 에서 HTTP 요청 하기
1670 단어 ioshttpNSURLSession
네 이 티 브 NSURLSession http 요청 은 간단 합 니 다.
import UIKit
import Foundation
class LLNetwork: NSObject {
func request(method: String, url: String, params: Dictionary<String, AnyObject> = Dictionary<String, AnyObject>(),callback: (data: NSData!, response: NSURLResponse!, error: NSError!) -> Void) {
// URL
var newURL = url
if method == "GET"{
newURL += "?"
newURL += self.buildParams(params)
}
// URLRequest
let request = NSMutableURLRequest(URL: NSURL(string: url)!)
request.HTTPMethod = method
if method == "POST"{
request.addValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.HTTPBody = buildParams(params).dataUsingEncoding(NSUTF8StringEncoding)
}
//
let task = NSURLSession.sharedSession().dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in
callback(data: data, response: response , error: error)
})
task.resume()
}
//
func buildParams(params: Dictionary<String, AnyObject> = Dictionary<String, AnyObject>()) -> String {
var newURL = ""
for (key,value) in params{
newURL += (key + "=" + (value as! String) + "&")
}
newURL = newURL.substringToIndex(newURL.characters.indexOf(newURL.characters.last!)!)
return newURL
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.