IOS网络请求原理
1,为什么要用到网络, 只有通过网络跟外界进行数据交互,数据更新,应用才能保持哦新鲜、活力
如果没有网络,也就缺少数据变化。变成一滩死水。
2, 良好的移动网络应用 = 良好的UI + 良好的用户体验 + 实时更新的数据。
新闻;
视频
音乐;
lbs
电商
社交
客户端。(client) 移动应用
服务器(server):为客户端提供服务,提供数据,提供资源的机器。
请求,向服务器索取数据的一种行为。
响应:服务器对客户端的请求作出反应,一般指
客户端 发请求 服务器 向数据库拿数据 服务器拿到数据 客户端得到;
前端。 后端。
ios,android Java ,PHP ,NET
按照软件开发阶段来分, 服务器分2种
远程服务器。
外网服务器。 正式服务器。
本地服务器。
测试用。
自己的电脑上搭建本地服务器就好,
选择怎样的本地服务器。
在公司里面,有专门的人选服务器。
在学习选什么本地服务器就可以。
安装eclipse
利用java编写一套服务器程序。
配置服务器的容器。Apache Tomcat
MAMP 用这个好像也可以搭建服务器啊。
URL的基本格式 = 协议://主机地址/路径。
如,http://ios。itcast。cn/ios/images/content——25.jpg
协议,不同的协议,代表着不同的资源查找方式,资源传输方式。
主机地址:存放资源的主机的ip地址。(域名)
路径: 资源在主机中的具体位置。
利用http 这种手段,在ios。itcast。cn这台电脑上ios/images/content——25.jpg的这个位置查找文件夹。
http://
超文本传输协议。访问的是远程服务器。
http协议是在网络开发中最常用的协议。
灵活
简单快速
完整的http通信可以分为2大步骤
请求; 响应。
内容
请求行 : 请求方法,请求资源路径 , HTTP 协议版本。
GET/MJserver/resources/images/1.jpg HTTP/1.1
请求头,包含了对客户端的环境描述。客户端请求的主机地址等信息。
Host:;192.168.1.105:8080 //客户端想访问的服务器主机地址。
User-Agent :Mozilla/5.0(Macintosh; Intel Mac OS X 10.9) firefox/30。0//客户端的类型,客户端的软件环境。
Accept:text/html, */* 客户端所能接收的数据类型。
Accept-Language: zh-cn //客户端的语言环境。
Accept-Encoding gzip //客户端支持的数据压缩格式。
请求体: 客户端发给服务器的具体数据, 比如文件数据。
返回时,也规定了一些东西。
1,状态行:包含了HTTP协议的版本,状态码,状态英文名称,
HTTP/1.1 200 OK
响应头;包含了对服务器的描述,对返回数据的描述
Server: Apache-coyote/1.1 //服务器的类型。
Content-type: image/jpeg //返回数据的类型
Content-Length:56811 //返回数据的长度。
Date:Mon,23,Jun2014 12:54:52 GMT 响应的时间。
实体内容: 服务器返回给客户端的具体数据, 比如文件数据。
状态码 : 200 OK 表示请求成功了
400 bad Request 客户端请求的语法错误, 服务器无法解析。
404 not found 服务器无法根据客户端的请求找到资源;
500 internal Server Error 服务器内部错误,无法完成请求。
file
访问的是本地服务器。file:// 不用加主机地址。
mailto
访问的是电子邮件地址,格式是mailto:
FTP
访问的是共享主机的文件资源,格式是ftp://只能访问文件。
IOS网络请求原理的更多相关文章
- 【转载】一步一步搭建自己的iOS网络请求库
一步一步搭建自己的iOS网络请求库(一) 大家好,我是LastDay,很久没有写博客了,这周会分享一个的HTTP请求库的编写经验. 简单的介绍 介绍一下,NSURLSession是iOS7中新的网络接 ...
- springmvc接口ios网络请求
springmvc: application/json;charset=utf-8的ios网络请求: 后台使用 @RequestBody注解参数接收:
- IOS 网络请求
技术交流新QQ群:414971585 关于网络请求的重要性我想不用多说了吧.对于移动客户端来说,网络的重要性不言而喻.常见的网络请求有同步GET, 同步POST, 异步GET, 异步POST.今天来看 ...
- IOS 网络请求方式
iOS开发中的网络请求 今天来说说关于iOS开发过程中的网络请求. 关于网络请求的重要性我想不用多说了吧.对于移动客户端来说,网络的重要性不言而喻.常见的网络请求有同步GET, 同步POST, 异 ...
- iOS 网络请求NSURLSession
iOS 7 和 Mac OS X 10.9 Mavericks 中一个显著的变化就是对 Foundation URL 加载系统的彻底重构. 现在已经有人在深入苹果的网络层基础架构的地方做研究了,所以我 ...
- IOS网络请求框架AFNetworking和ASIHttpRequest对比
ASI基于CFNetwork框架开发,而AFN基于NSURL. ASI更底层,请求使用创建CFHTTPMessageRef进行,使用NSOperationQueue进行管理,ASIHTTPReques ...
- iOS网络请求基础
这篇是关于网络请求的,结合公司的实际情况编写,如果有不同意见欢迎留言共同讨论. iOS在9.0之后彻底放弃了NSURLConnection,现在已经改用了NSURLSession进行网络请求.一般现在 ...
- IOS网络请求之NSURLSession使用
前言: 无论是Android还是ios都离不开与服务器交互,这就必须用到网络请求,记得在2013年做iOS的时候那时候用的ASIHTTPRequest框架,现在重新捡起iOS的时候ASIHTTPReq ...
- IOS网络请求之AFNetWorking 3.x 使用
前言: 计划把公司的网络请求与业务解耦,所以想着学习一下网络请求,最近学习了NSURLSession,今天来学习一下基于NSURLSession封装的优秀开源框架AFNetWorking 3.x,之前 ...
随机推荐
- C语言操作mysql
php中 mysqli, pdo 可以用 mysqlnd 或 libmysqlclient 实现 前者 从 php 5.3.0起已内置到php中, 并且支持更多的特性,推荐用 mysqlnd mysq ...
- R&S学习笔记(一)
1.一个VRF有两个主要的组成部分:路由区分符RD和路由目标RT.一个路由区分符(RD)是一个数字,除了帮助识别在一个提供商的网络中的VPN和允许重叠 IP区域之外没有其它的含义.RD是一个分为两个部 ...
- tomacat启动慢
tomcat目录下有多个工程,tomcat每次启动的时候都会去加载,删除不需要的工程,
- $.when().then()
当两个Ajax请求是成功的则执行函数myFunc,如果任一个有错误则执行myFailure. $.when($.ajax("/page1.php"), $.ajax("/ ...
- 自定义属性,资源文件attrs.xml
1.attrs.xml中写:在values文件夹下. <?xml version="1.0" encoding="utf-8"?> <reso ...
- js 小工具-- 获取主机名
<script type="text/javascript"> function getHostName(url) { var host = "null&qu ...
- linux在yum下安装mysql
1:查看软件是否安装 yum list installed | grep mysql 2:卸载CentOS系统自带mysql数据库 yum -y remove mysql-libs.x86_64,若有 ...
- 云主机不能外网ssh连接,只能内网ssh连接的问题处理
某台服务器外网无法ssh,内网可以ssh连接,ping值延时比较大 安装iftop查看流量 yum install -y iftop iftop界面含义如下 第一行:带宽显示 中间部分:外部连接列表, ...
- HP XP7 GAD双活实现的理解
XP7双活的虚拟卷global active device (GAD)实际上对应两个存储的两个物理卷(有点儿像Mirror Disk镜像) 当主机A向阵列A发出写数据请求后,阵列A首先检查要被写入的数 ...
- angularjs发送delete请求传参数的方法
angularjs使用$http.delete()发送请求,默认是没法通过变量来传参数