iOS專案開發實戰——通過Http Post方式與伺服器通訊

乞力馬紮羅的雪CYF發表於2015-08-12

      使用Get方式與伺服器通訊時,傳遞的引數是直接放在URL中的,所以安全性不是很高,同時傳遞的資料量也並不是很大,為了克服這種困難,Http提供了另一種伺服器請求方式——POST請求。可以傳輸較大的資料量。具體實現如下:

(1)伺服器端程式碼請參考我的部落格《iOS專案開發實戰——通過Http Get方式與伺服器通訊》,客戶端用Get請求還是POST請求與伺服器端沒有關係。只是客戶端的請求程式碼不一樣。


(2)在Xcode中新建一個基於Swift的iOS專案。介面設計和控制元件繫結也同《iOS專案開發實戰——通過Http Get方式與伺服器通訊》,具體在傳送按鈕的點選中實現不同,程式碼如下:

@IBAction func connectPost(sender: UIButton) {
        
        var req = NSMutableURLRequest(URL: NSURL(string: "http://localhost:8080/PostServer/Hello.jsp")!)
        req.HTTPMethod = "POST"
        req.HTTPBody = NSString(string: "name=\(inputName.text)").dataUsingEncoding(NSUTF8StringEncoding)
        
        NSURLConnection.sendAsynchronousRequest(req, queue: NSOperationQueue.mainQueue()) { (resp:NSURLResponse!, data:NSData!, error:NSError!) -> Void in
            
            if let d = data{
            
                self.feedbackInfo.text = String(NSString(data: d, encoding: NSUTF8StringEncoding)!)
            }
        }
        
    }

(3)最後的實現效果如下:

.


github主頁:https://github.com/chenyufeng1991  。歡迎大家訪問!

相關文章