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,之前 ...
随机推荐
- iframe 加载完成事件
<body onload="load()"> <iframe id="iframe" frameborder="0" sc ...
- bzoj2518: [Shoi2010]滚动的正四面体
Description 正四面体总共有4个面,每个面都是一个正三角形.现在把它的一个面标记上字母A,如图 3中所示,A标记在底面上: 于是,这个正四面体的滚动过程就可以用一个只包含“L”“R”“B”的 ...
- chrome常用配置
插件类: Gestures for Google Chrome 增加鼠标手势 安装后需重启 JSONView 自动格式化页面输出的json数据
- struts1&&Hibernate Demo1
用struts1和Hibernate实现简单登录案例 主要思路:通过用户名name验证 如果一致则验证成功. 附上源码: 1.建立student表,这里使用的是mysql数据库,以下为该表的DDL: ...
- python(24)urlencode和urldecode
当url地址含有中文,或者参数有中文的时候,这个算是很难正常了,但是把这样的url作为参数传递的时候(最常见的callback),需要把一些中文甚至‘/’做一下编码转换. 一.urlencode ur ...
- Log功能
目录控制开关,若存在则创建log文件,输出. 宏函数,若debug打开,则输出. 多线程输出到同一文件. 通过mutex控制多个进程同时创建log文件.
- maven仓库介绍《本地仓库、远程仓库》
在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依赖和插件的地方)任何的构件 ...
- windows下PHP5.5.6+Apache2.4.7配置
本文主要阐述在windows8及win8.1 环境下搭建PHP5.5.6+Apache2.4.7. 1.软件准备 apache 2.4.7:http://pan.baidu.com/s/1iUPif ...
- PCI Express(四) - The transaction layer
原文出处:http://www.fpga4fun.com/PCI-Express4.html 感觉没什么好翻译的,都比较简单,主要讲了TLP的帧结构 In the transaction layer, ...
- android开发--(SimpleAdapter)运用
SimpleAdapter的参数说明 第一个参数 表示访问整个android应用程序接口,基本上所有的组件都需要 第二个参数表示生成一个Map(String ,Object)列表选项 第三个 ...