1、JSON解析 --- 重要

2、异步请求

注:一般不会发送同步请求,由于需要等待服务器返回NSData数据,因此会卡住当前线程

注 1:发送异步请求,会自动另开一个线程,不会卡死主线程

注2:需要使用主队列作为参数,原因:请求返回后会调用block,这个block会存放在队列中,由于需要改变UI界面,因此需要放在主队列中

3、网络通信小结

一、一个HTTP请求的基本要素

1. 请求URL:客户端通过哪个路径找到服务器

2. 请求参数:客户端发送给服务器的数据

* 比如登录时需要发送的用户名和密码

3.返回结果:服务器返回给客户端的数据

* 一般是JSON数据或者XML数据

4、黑酷例子

4.1 实现要求

搭建一个视频列表,数据从服务器上获取

4.2 实现思路

1> Storyboard搭建一个导航控制器,根控制器为TableViewController,新建HMVideosController,关联

2>viewDidLoad加载服务器最新视频信息,并测试

3> 新建HMVideo视频模型,存放每一个视频的信息,添加类方法,KVC创 建模型

4> 利用SDWebImage对Cell图片进行下载

5> 选中某行,播放对应的视频

注:利用系统自带的视频播放控制器即可

6> 将URL抽取成宏,方便以后改服务器IP地址

#defineHMUrl(path) [NSURL URLWithString:[NSString stringWithFormat: @"http://localhost:8080/MJServer/%@",path]]

5、XML解析 --- 重要

5.1 XML基本概念

5.2 GDataXML

1>GDataXML配置

1. 添加动态链接库libxml2.dylib

2. 设置libxml头文件搜索路径

3. 设置链接参数,自动链接libxml库

4. GDataXMLNode为非ARC,编译器单独处理

2> XML解析

5.3 NSXMLParser

6、XML小结

7、POST请求

8、HTTP底层通信

8.1 HTTP请求

8.2 HTTP响应

9、HTTP通信总结

10、请求超时 & URL转码

注:通常在请求的时候添加蒙版,提示正在发送请求,等待,请求完成后隐藏蒙版

11、发送JSON给服务器

12、多值参数

iOS开发 - 第04篇 - 网络 - 02 - JSON解析 请求 黑酷例子 HTTP通信相关推荐

  1. IOS开发基础之网易新闻环境搭建异步请求json,AFN网络封装第1天

    IOS开发基础之网易新闻环境搭建异步请求json,AFN网络封装第1天 视频资料是2015年的,但是AFN是导入框架的关键文件,我尝试使用cocoapods安装最新的AFN,虽然成功了,但是版本太高, ...

  2. iOS开发入门——基础篇一

    文章目录 1. iOS应用生命周期 1.1 应用程序的架构 1.2 iOS应用的5种状态: 1.2.1做一些操作对应的生命周期调用的顺序 1.2.2全面的生命周期执行流程图 1.3 Main函数入口 ...

  3. [分享]iOS开发-UI篇:CAlayer层的属性

    iOS开发UI篇-CAlayer层的属性 一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property ...

  4. swift php 类型判断,iOS开发 - Swift实现检测网络连接状态及网络类型

    一.前言 在移动开发中,检测网络的连接状态尤其检测网络的类型尤为重要.本文将介绍在iOS开发中,如何使用Swift检测网络连接状态及网络类型(移动网络.Wifi). 二.如何实现 Reachabili ...

  5. iOS开发---设计素材篇2

    转自http://www.cocoachina.com/applenews/devnews/2013/0117/5562.html 虽然技术是iOS开发的主心骨,但漂亮的界面和素材是吸引人的关键要素. ...

  6. iOS 开发之动画篇 - 从 UIView 动画说起

    毋庸置疑的:在iOS开发中,制作动画效果是最让开发者享受的环节之一.一个设计严谨.精细的动画效果能给用户耳目一新的效果,吸引他们的眼光 -- 这对于app而言是非常重要的. 本文作为动画文集的第一篇, ...

  7. iOS开发笔记 - 语言篇之Swift

     2014年的苹果全球开发者大会(WWDC),当Craig Federighi向全世界宣布"We have new programming language"(我们有了新的编程语言 ...

  8. Python之路(第三十一篇) 网络编程:简单的tcp套接字通信、粘包现象

    一.简单的tcp套接字通信 套接字通信的一般流程 服务端 server = socket() #创建服务器套接字server.bind() #把地址绑定到套接字,网络地址加端口server.liste ...

  9. Android网络数据JSON解析使用总结

    一.JSON基础知识 (一)什么是json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于Java ...

最新文章

  1. ubuntu14.04系统扩容的方法
  2. js代码收藏(zz)
  3. 在测试时用到的一些mysql的小技巧(持续更新)
  4. Windows计算机管理打不开提示程序未关联解决办法
  5. 28. Leetcode 25. K 个一组翻转链表 (链表-反转链表)
  6. 2020-11-11(C语言下JNI开发hello过程)
  7. mysql触发器 生僻字_MySQL生僻字插入失败的处理方法(Incorrect string value)
  8. ssl1072-砝码称重【dp练习】
  9. 数据结构期末复习之B树、B+树
  10. 扩展BSGS-传送门
  11. 帕雷诺的个展“共此时”在沪开幕 体验真实与虚妄的交错人生
  12. Android开源框架源码分析:Okhttp
  13. jpa方言的yml格式
  14. 数学模型:传染病模型
  15. 2023新疆大学计算机考研信息汇总
  16. 计算机桌面图标右上角出现双箭头符号,建议这样去掉桌面快捷图标的小箭头-word箭头符号...
  17. 找众数的算法代码c语言,寻找众数算法
  18. 国产arm芯片CH32F103芯片开发下载使用简介
  19. 面试题 16.17. 连续数列
  20. Packet Tracer(第二期)--4RIP

热门文章

  1. java项目下载后无法运行_eclipse不能在手机运行程序问题解决办法
  2. Python表白代码:太秀了,用过的人都找到了对象...【满屏玫瑰盛开】
  3. Android 保存图片到图库
  4. Ubuntu查看和写入系统日志
  5. 解决Mac睡眠启动后无声音
  6. C语言如何自定义头文件——一看就废!!!
  7. android 九格锁屏,自定义 View 之实现九宫格锁屏效果
  8. 02 · 如何在C#程序开发中实现穿梭功能
  9. 计算机软件摊销会计分录,请问老师:自行研发的无形资产摊销的会计分录怎么做(1)借:管理费? 爱问知识人...
  10. Docker系列 WordPress系列 动态对话页面