NSURLSession -- 实际开发中运用
NSURLSession实际请求
iOS9使用http请求方法:
- 在工程info.plist文件内添加NSAppTransportSecurity键,类型为dictionary
 - 在NSAppTransportSecurity中添加NSAllowsArbitraryLoads键,值为YES
 
GET请求
let key = "a27383fa93bd3cc57ff4a180036d56ac"
let urlString = "http://v.juhe.cn/xianxing/citys"
let url = NSURL(string: urlString + "?key=" + key) // 创建请求对象
let request = NSURLRequest(URL: url!) // 获取会话对象
let session = NSURLSession.sharedSession() // 创建请求任务
let task = session.dataTaskWithRequest(request) { (data, response, error) in
if let jsonData = data {
do {
let dic = try NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions.MutableContainers) as? [String : AnyObject]
print(dic)
} catch { }
}
} // 执行任务
task.resume()
POST请求
let urlString = "http://v.juhe.cn/carzone/series/query"
let url = NSURL(string: urlString) // 创建请求对象
let request = NSMutableURLRequest(URL: url!)
// 设置请求模式
request.HTTPMethod = "POST"
// 设置请求体
request.HTTPBody = "action=getCarAllBrand&key=afdfb2885044bf2e14b24c293012bbea".dataUsingEncoding(NSUTF8StringEncoding) // 获取会话对象
let session = NSURLSession.sharedSession() // 创建请求任务
let task = session.dataTaskWithRequest(request) { (data, response, error) in
if let jsonData = data {
do {
let dic = try NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions.MutableContainers) as? [String : AnyObject]
print(dic)
} catch { }
}
} // 执行任务
task.resume()
NSURLSession -- 实际开发中运用的更多相关文章
- 总结iOS开发中的断点续传那些事儿
		
前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...
 - iOS开发中打电话发短信等功能的实现
		
在APP开发中,可能会涉及到打电话.发短信.发邮件等功能.比如说,通常一个产品的"关于"页面,会有开发者的联系方式,理想情况下,当用户点击该电话号码时,能够自动的帮用户拨出去,就涉 ...
 - iOS开发之网络编程--1、AFNetwork 3.x 的所有开发中常用基础介绍
		
前言:第三方网络请求框架中AFNetwork 3.x收欢迎程度相当高的: 由于iOS 7 和 Mac OS X 10.9 Mavericks 中一个显著的变化就是对 Foundation URL 加载 ...
 - iOS开发中常见bug!(内附解答方法)
		
序言 你是否曾经修复了一个 bug ,随后又发现了一个跟刚修复 bug 有关的 bug ,又或是修复 bug 的方式引起了另一个 bug ? 然而这些问题是绝佳的学习机会.所以我们怎样尽可能多地从修复 ...
 - TDD在Unity3D游戏项目开发中的实践
		
0x00 前言 关于TDD测试驱动开发的文章已经有很多了,但是在游戏开发尤其是使用Unity3D开发游戏时,却听不到特别多关于TDD的声音.那么本文就来简单聊一聊TDD如何在U3D项目中使用以及如何使 ...
 - React在开发中的常用结构以及功能详解
		
一.React什么算法,什么虚拟DOM,什么核心内容网上一大堆,请自行google. 但是能把算法说清楚,虚拟DOM说清楚的聊聊无几.对开发又没卵用,还不如来点干货看看咋用. 二.结构如下: impo ...
 - Android学习探索之Java 8 在Android 开发中的应用
		
前言: Java 8推出已经将近2年多了,引入很多革命性变化,加入了函数式编程的特征,使基于行为的编程成为可能,同时减化了各种设计模式的实现方式,是Java有史以来最重要的更新.但是Android上, ...
 - Java开发中的23种设计模式详解
		
[放弃了原文访问者模式的Demo,自己写了一个新使用场景的Demo,加上了自己的理解] [源码地址:https://github.com/leon66666/DesignPattern] 一.设计模式 ...
 - 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践
		
提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...
 
随机推荐
- jQuery之事件even
			
jQuery之事件 W3C:http://www.w3school.com.cn/jquery/jquery_ref_events.asp 一.事件列表 1.blur() 当失去焦点时触发 ...
 - qemu 的方式安装debian 模拟powerpc
			
http://bbs.pediy.com/showthread.php?p=1424746http://www.ibm.com/developerworks/cn/linux/l-qemu/ 线总结下 ...
 - careercup-栈与队列 3.6
			
3.6 编写程序,按升序对栈进行排序(即最大元素位于栈顶).最多只能使用一个额外的栈存放临时数据,但不得将元素复制到别的数据结构中(如数组).该栈支持如下操作:push.pop.peek和isEmpt ...
 - JAVA的程序代码小细节,变量的使用,以及一些细节的面试题
			
package cn.hncu; public class LableDemo { public static void main(String[] args) { //demo1(); demo2( ...
 - android开发之自定义AutoCompleteTextView
			
AutoCompleteTextView,很多人都用过,有些情况下使用Google提供的ArrayAdapter作为适配器就可以完成需求,但是在实际开发中,我们经常需要开发自定义适配器来完成开发工作. ...
 - Win8.1 与 pl2303驱动
			
在8.1上最新的pl2303驱动都不支持Win8.1了.要使用老的驱动 http://www.drv5.cn/sfinfo/9385.html 这里这个驱动里面有五个文件,通过在设备管理器里面查看串口 ...
 - 必应代码搜索 Bing Code Search 安装
			
微软这几天推出基于bing搜索引擎的 Bing Code Search ,可直接在浏览器上搜索和运行代码.目前中文版必应无法使用本功能,有需要的同学可以转到英文版进行搜索: 英文版必应: http ...
 - mysql select 语法
			
格式:select [选项子句] 字段表达式子句 [from子句] [where子句] [group by子句] [having子句] [order by子句] [limit子句]; 提示:子句的顺序 ...
 - PHPStorm&PHPstudy环境配置
			
因为实习要求,最近在学php,补下开发环境的配置,原博客链接:点击打开链接 1.创建新的项目(project),创建完成之后单击工具栏的应用运行/调试(Select Run/Debug Configu ...
 - (转)PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
			
一.中文截取:mb_substr() mb_substr( $str, $start, $length, $encoding ) $str,需要截断的字符串 $start,截断开始处,起始处为0 $l ...