swift 网络请求 Get、Post HttpRequest For Swift language (iOS )

原创 2017年01月03日 18:27:15

1.Xcode7后注意HTTP请求的处理: Add  "NSAppTransportSecurity (NSAllowsArbitraryLoads Boolean YES)" in info.plist


2.Get:

  let url_origin = "http://..."

        let url_percent = url_origin.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)

        let url:NSURL = NSURL(url_percent!)!

        let requets:NSURLRequest = NSURLRequest(URL: url)

        let configuration:NSURLSessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration()

        let session:NSURLSession = NSURLSession(configuration: configuration)

        let task:NSURLSessionDataTask = session.dataTaskWithRequest(requets, completionHandler: {

                    (data:NSData?,response:NSURLResponse?,error:NSError?)->Void in

                    if error == nil{

                        do{

                            let responseData:NSDictionary = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.AllowFragments) as! NSDictionary

                            print(responseData)

   //如果responseData是Json格式,可以通过 responseData["key的名字"] 来获取相应的value值 if the form of the responseData is "Json" , we can get the value through responseData["the name of key"]

                        }catch{       

                        }

                    }

                })

                task.resume() // start task


3.Post:

 let request = NSMutableURLRequest(URL: NSURL(string: "http://...?")!)

request.HTTPMethod = "POST"

    let postStr = "key=value&key2=value2&...&keyN=valueN"

                request.HTTPBody = postStr.dataUsingEncoding(NSUTF8StringEncoding)

                let task = NSURLSession.sharedSession().dataTaskWithRequest(request, completionHandler: {

                    (data:NSData?,response:NSURLResponse?,error:NSError?)->Void in

                    if error == nil{

                        do{

                            let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)

                            print("Post result \(responseString)")   

//根据返回结果进行解析做进一步处理  further processing                

                        }catch{

                            print("error")

                        }

                    }

                })

                task.resume()


swift开发网络篇—利用NSURLSession 发送GET和POST请求

说明:本文示例代码发送的请求均为http请求,需要对info.plist文件进行配置。如何配置,请参考https://github.com/HanGangAndHanMeimei/iOS9Adapta...
  • ABCD2686529828
  • ABCD2686529828
  • 2016年05月05日 15:54
  • 5961

swift开发网络篇—利用NSURLConnection GET请求和POST请求

一、GET请求和POST请求简单说明     @IBOutlet weak var userName: UITextField!     @IBOutlet weak var userPwd: U...
  • ABCD2686529828
  • ABCD2686529828
  • 2016年05月04日 21:47
  • 5729

Swift 3.0封装 URLSession 的GET/SET方法代替 Alamofire

升级到 Swift3.0 之后,新版本的 Alamofire 只支持 iOS 9.0 以上的系统,如果要适配 iOS 8,需要自己封装 URLSession,下面是笔者的方案: 这里使用的是 Swi...
  • cg1991130
  • cg1991130
  • 2016年10月10日 12:18
  • 6672

Swift  HTTP  GET请求例子

原文 http://swiftdeveloperblog.com/http-get-request-example-in-swift/这个短博客我分享个例子:如何使用一个参数,创建和发送HTTP GE...
  • BelugaW
  • BelugaW
  • 2016年05月12日 14:43
  • 2737

Swift - 原生GET&POST请求的用法

只要属于移动开发的范畴,网络请求一定是其中的重头戏,Object-C的网络请求大家都不陌生,不过感觉很熟悉的貌似也不多,因为第三方的库用起来更加方便,比如我们所熟知的AFNetworking,在Swi...
  • CodingFire
  • CodingFire
  • 2016年07月08日 16:03
  • 2985

每天进步一点点——Swift中HTTP返回码解析

转载请说明出处:http://blog.csdn.net/cywosp/article/details/20469261     在刚开始接触Swift的时候,为了能更好的完成项目开发,当时花...
  • cywosp
  • cywosp
  • 2014年03月04日 16:28
  • 5655

Swift中的HTTP请求

Swift中的HTTP请求 iOS开发中大部分App的网络数据交换是基于HTTP协议的。本文将简单介绍在Swift中使用HTTP进行网络请求的几种方法。 注意:网络请求完成后会获得一个NS...
  • hanbing861210
  • hanbing861210
  • 2014年10月11日 13:55
  • 672

swift使用ASIHttpRequest

添加第三方库ASIHttpRequest添加SystemConfiguration.framework, MobileCoreServices.framework,CoreGraphics.frame...
  • u011550635
  • u011550635
  • 2015年02月02日 18:51
  • 1178

swift开发网络篇 - post 请求

/**      所有网络请求,统一使用异步请求!            在今后的开发中,如果使用简单的get/head请求,可以用NSURLConnction异步方法      GET查/P...
  • ABCD2686529828
  • ABCD2686529828
  • 2016年05月04日 20:21
  • 4074

Swift3 1.简单的网络请求(POST)

最近开始做新项目, 决定使用Swift 来做, 几个月前看了一下还是Swift2  现在已经到Swift3 了, 听说改动非常大。 那么直接从3学起吧,希望别出个4又改动非常大!    新做的项目会...
  • KnowHeart
  • KnowHeart
  • 2017年02月21日 18:07
  • 801
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:swift 网络请求 Get、Post HttpRequest For Swift language (iOS )
举报原因:
原因补充:

(最多只允许输入30个字)