首页 > 代码库 > 网络基础

网络基础

  • 3.1 网络基础

      001 问题:为什么要学习网络编程?      回答:(1)网络编程是一种实时更新应用数据的常用手段           (2)网络编程是开发优秀网络应用的前提和基础  002 网络基本概念      2-1 客户端(就是手机或者ipad等手持设备上面的APP)      2-2 服务器(远程服务器-本地服务器)      2-3 请求(客户端索要数据的方式)      2-4 响应(需要客户端解析数据)      2-5 数据库(服务器的数据从哪里来)
  • 3.2 Http

      001 URL      1-1 如何找到服务器(通过一个唯一的URL)      1-2 URL介绍          a. 统一资源定位符          b. url格式(协议\主机地址\路径)              协议:不同的协议,代表着不同的资源查找方式、资源传输方式              主机地址:存放资源的主机(服务器)的IP地址(域名)              路径:资源在主机(服务器)中的具体位置      1-3 请求协议          【file】访问的是本地计算机上的资源,格式是file://(不用加主机地址)          【ftp】访问的是共享主机的文件资源,格式是ftp://          【mailto】访问的是电子邮件地址,格式是mailto:          【http】超文本传输协议,访问的是远程的网络资源,格式是http://(网络请求中最常用的协议)  002 http协议      2-1 http协议简单介绍          a.超文本传输协议          b.规定客户端和服务器之间的数据传输格式          c.让客户端和服务器能有效地进行数据沟通      2-2 http协议优缺点          a.简单快速(协议简单,服务器端程序规模小,通信速度快)          b.灵活(允许传输各种数据)          c.非持续性连接(1.1之前版本是非持续的,即限制每次连接只处理一个请求,服务器对客户端的请求做出响应后,马上断开连接,这种方式可以节省传输时间)      2-3 基本通信过程          a.请求:客户端向服务器索要数据          b.响应:服务器返回客户端相应的数据  003 GET和POST请求      3-1 http里面发送请求的方法      GET(常用)、POST(常用)、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT、PATCH      3-2 GET和POST请求的对比【区别在于参数如何传递】          GET          在请求URL后面以?的形式跟上发给服务器的参数,多个参数之间用&隔开,比如          http://ww.test.com/login?username=123&pwd=234&type=JSON          由于浏览器和服务器对URL长度有限制,因此在URL后面附带的参数是有限制的,通常不能超过1KB          POST          发给服务器的参数全部放在请求体中          理论上,POST传递的数据量没有限制(具体还得看服务器的处理能力)      3-3 如何选择【除简单数据查询外,其它的一律使用POST请求】          a.如果要传递大量数据,比如文件上传,只能用POST请求          b.GET的安全性比POST要差些,如果包含机密\敏感信息,建议用POST          c.如果仅仅是索取数据(数据查询),建议使用GET          d.如果是增加、修改、删除数据,建议使用POST  004 iOS中发送http请求的方案      4-1 苹果原生          NSURLConnection 03年推出的古老技术          NSURLSession     13年推出iOS7之后,以取代NSURLConnection【重点】          CFNetwork        底层技术、C语言的      4-2 第三方框架          ASIHttpRequest          AFNetworking         【重点】          MKNetworkKit  005 http请求通信过程      5-1 请求          【包括请求头+请求体·非必选】      5-2 响应          【响应头+响应体】      5-3 通信过程          a.发送请求的时候把请求头和请求体(请求体是非必须的)包装成一个请求对象          b.服务器端对请求进行响应,在响应信息中包含响应头和响应体,响应信息是对服务器端的描述,具体的信息放在响应体中传递给客户端      5-4 状态码          【200】:请求成功          【400】:客户端请求的语法错误,服务器无法解析          【404】:无法找到资源          【500】:服务器内部错误,无法完成请求

网络基础