处理 HTTP 请求 为了充分地使用 CodeIgniter,你需要对 HTTP 请求和响应的工作方式有基本的了解。对于所有想要成功的开发者来说, 理解 HTTP 背后的概念是 必须 的。...本章的第一部分会给出一些关于 HTTP 的概述,接着我们会讨论怎样用 CodeIgniter 来处理 HTTP 请求与响应。 什么是 HTTP ? HTTP 是两台计算机相互通信的一种基于文本的协议。...HTTP 响应 服务器收到请求后,你的 web 应用程序会处理这条信息然后输出一些响应结果。服务器会将你的响应结果打包为对 客户端的的你的响应结果打包为对客户端的响应的一部分。... 响应消息告诉客户端服务器正在使用的 HTTP 版本规范,以及响应状态码(200)。状态码是标准化的对客户端具有非常特定 含义的代码。...对 HTTP 请求和响应的处理 虽然 PHP 提供了与 HTTP 请求和响应进行交互的原生方式,但 CodeIgniter 像大多数框架一样,将它们抽象化,让你拥有一个 一致、简单的接口。
一、什么是Ajax Ajax 的全称是 Asynchronous JavaScript and XML(即异步的 JavaScript 和 XML),是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术...2、缺点 不支持浏览器back按钮 安全问题,Ajax 暴露了与服务器交互的细节 对搜索引擎的支持比较弱 三、Ajax 的使用 -- 实现步骤 1、创建 XMLHttpRequest 对象,即创建一个异步调用对象...JavaScript 和 DOM 实现局部刷新 四、Ajax中的一些处理总结 1、服务器响应处理 responseText:获得字符串形式的响应数据 responseXML:获得XML 形式的响应数据...比较常见的有: 200:“OK”(当 readyState 等于 4 且状态为 200 时,表示响应已就绪) 304:该资源在上次请求之后没有任何修改(这通常用于浏览器的缓存机制,使用GET请求时尤其需要注意...) 403:(禁止) 服务器拒绝请求 404:(未找到) 服务器找不到请求的网页 408:(请求超时) 服务器等候请求时发生超时 500:(服务器内部错误) 服务器遇到错误,无法完成请求
1.1 AJAX 简介 AJAX 全称为 (Asynchronous JavaScript And XML),就是异步的 JS 和 XML。...AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式 1.2 XML简介 XML 可扩展标记语言。...成功请求并创建了新的资源 401 Unauthorized 未授权/请求要求用户的身份认证 404 Not Found 服务器无法根据客户端的请求找到资源 500 Internal Server Error...服务器内部错误,无法完成请求 // 判断(服务端返回了所有的结果) if (xhr.readyState === 4) { //判断响应码 200 404 403...http请求 与 ajax请求 ajax请求 是一种特别的 http请求 对服务器端来说, 没有任何区别, 区别在浏览器端 浏览器端发请求: 只有XHR 或fetch 发出的才是ajax 请求, 其它所有的都是非
在本教程中,我们将学习如何使用 JS 进行AJAX调用。 1.AJAX 术语AJAX 表示 异步的 JavaScript 和 XML。 AJAX 在 JS 中用于发出异步网络请求来获取资源。...我们还需要调用open()和send()方法。来自服务器的响应存储在responseText变量中,该变量使用JSON.parse()转换为JavaScript 对象。...如果存在网络错误,则将拒绝,这会在.catch()块中处理。 如果来自服务器的响应带有任何状态码(如200、404、500),则promise将被解析。响应对象可以在.then()块中处理。...错误处理 请注意,对于成功的响应,我们期望状态代码为200(正常状态),但是即使响应带有错误状态代码(例如404(未找到资源)和500(内部服务器错误)),fetch() API 的状态也是 resolved...将响应代码(例如404、500)视为可以在catch()块中处理的错误,因此我们无需显式处理这些错误。
来自Google的数据表明,一个有10条数据0.4秒能加载完的页面,变成30条数据0.9秒加载完之后,流量和广告收入下降90%。...避免404错误 HTTP请求很昂贵,返回无效的响应(如404未找到)完全没必要,降低用户体验而且毫无益处。 一些网站设计很酷炫、有提示信息的404页面,有助于提高用户体验,但还是浪费服务器资源。...使用CDN 用户与服务器的物理距离对响应时间也有影响。把内容部署在多个地理位置分散的服务器上能让用户更快地载入页面。但具体要怎么做呢?...配置 Etag 实体标签(ETags),是服务器和浏览器用来决定浏览器缓存中组件与源服务器中的组件是否匹配的一种机制(“实体”也就是组件:图片,脚本,样式表等等)。...尽早输出(flush)缓冲 用户请求页面时,服务器通常需要花费200 ~ 500毫秒来组合 HTML 页面。在此期间,浏览器处于空闲、等待数据状态。
401——请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 HTTP 401.1 - 未授权:登录失败 HTTP 401.2 - 未授权:服务器配置问题导致登录失败...5**(服务端错误类):服务器不能正确执行一个正确的请求 HTTP 500 - 服务器遇到错误,无法完成请求 HTTP 500.100 - 内部服务器错误 - ASP 错误 &emsp...- 网关错误 HTTP 503:由于超载或停机维护,服务器目前无法使用,一段时间后可能恢复正常 64....,此处如果浏览器访问过,缓存上有对应资源,会与服务器最后修改时间对比,一致则返回304; 8、浏览器开始下载html文档(响应报头,状态码200),同时使用缓存; 9、文档树建立,根据标记请求所需指定MIME...响应信息是xml,可以解析为Dom对象。 status:服务器的Http状态码,若是200,则表示OK,404,表示为未找到。 statusText:服务器http状态码的文本。
作用是通过在后台与服务器进行少量数据交换,使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。...设置响应HTTP请求状态变化的函数. 发送HTTP请求. 获取异步调用返回的数据. 使用JavaScript和DOM实现局部刷新....HTTP协议版本 200:请求成功 201:提示知道新文件的URL 202:接受和处理、但处理未完成 203:返回信息不确定或不完整 204:请求收到,但返回信息为空 205:服务器完成了请求,用户代理必须复位当前已经浏览过的文件...GET,但文件未变化 305:请求的资源必须从服务器指定的地址得到 306:前一版本HTTP中使用的代码,现行版本中不再使用 307:申明请求的资源临时性删除 400:错误请求,如语法错误 401:请求授权失败...500:服务器产生内部错误 501:服务器不支持请求的函数 502:服务器暂时不可用,有时是为了防止发生系统过载 503:服务器过载或暂停维修 504:关口过载,服务器使用另一个关口或服务来响应用户,
二.Ajax的原生写法 1.XMLHttpRequest对象 XMLHttpRequest 对象用于在后台与服务器交换数据,能够在不重新加载页面的情况下更新网页,在页面已加载后从服务器请求数据,在页面已加载后从服务器接收数据...(3).关于status 由服务器返回的 HTTP 状态代码,200 表示成功,而 404 表示 "Not Found" 错误。当 readyState 小于 3 的时候读取这一属性会导致一个异常。...使用GET和POST请求查看 **304:请求资源未修改,使用缓存** 307:与302类似。...使用GET请求重定向 **404:客户端请求失败** 408:请求超时 **500:内部服务器错误,无法完成请求** 505:服务器不支持请求的HTTP协议的版本,无法完成处理 十.不可忽视的HTTP头文件...(2)使用异步方式与服务器通信,响应速度更快。 (3)可以把一些原本服务器的工作转接到客户端,利用客户端闲置的能力来处理,减轻了服务器和带宽的负担,节约空间和宽带租用成本。
在接收服务器数据时一般是得到字符串,我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。 JSON.parse()方法用于从一个字符串中解析出json对象。...前端应该告知后台哪些有效信息,后台才能返回前端想要的数据 先将要展示的页面内容进行模块划分,将模块的内容提取出来,以及方便前端的一些标志值等,将所有想要的内容和逻辑告知后端。...Ajax AJAX = 异步 JavaScript 和 XML。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。...通过 AJAX,JavaScript 无需等待服务器的响应,而是: 在等待服务器响应时执行其他脚本 当响应就绪后对响应进行处理 Web的运作原理:一次HTTP请求对应一个页面。...两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST。 GET:从指定的资源请求数据 POST:向指定的资源提交要处理的数据 GET 基本上用于从服务器获得(取回)数据。
jQuery.get() 使用一个HTTP GET 请求从服务器加载数据。 ...客户端在收到常规响应之前,应准备接收一个或多个1xx响应。 100-继续。 101-切换协议。 2xx-成功 这类状态代码表明服务器成功地接受了客户端请求。...416–所请求的范围无法满足。 417–执行失败。 423–锁定的错误。 5xx-服务器错误 服务器由于遇到错误而不能完成该请求。...500-内部服务器错误。 500.12-应用程序正忙于在Web服务器上重新启动。 500.13-Web服务器太忙。 500.15-不允许直接请求Global.asa。...这个错误代码为IIS6.0所专用。 500.18–URL授权存储不能打开。这个错误代码为IIS6.0所专用。 500.100-内部ASP错误。
(6) 避免使用CSS Expression(css表达式)又称Dynamicproperties(动态属性)。 (7) 图片预加载,将样式表放在顶部,将脚本放在底部 加上时间戳。...404 Not Found 找不到如何与 URI 相匹配的资源。 500 Internal Server Error 最常见的服务器端错误。...,不能被服务器所理解 401——请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 HTTP 401.1 - 未授权:登录失败 HTTP 401.2- 未授权...5**(服务端错误类):服务器不能正确执行一个正确的请求 HTTP 500 - 服务器遇到错误,无法完成请求 HTTP500.100 - 内部服务器错误 - ASP 错误 HTTP...(7)处理结束回馈报头,此处如果浏览器访问过,缓存上有对应资源,会与服务器最后修改时间对比,一致则返回304; (8)浏览器开始下载html文档(响应报头,状态码200),同时使用缓存;
使用AJAX的时候,当你点击 “提交”,JavaScript 会发送一个请求到服务器,解析请求响应,并且更新到页面中,纯粹来说,用户是无法感觉到任何数据被传送到了服务器。...,具有良好的响应能力 将一些工作从服务器转移到客户端中,节省了服务器和带宽资源 按需取数据 ,减轻了服务器负担,也大大减少了冗余请求 缺点: AJAX 主要依赖于JavaScript ,浏览器对 JavaScript...xhr.onreadystatechange=function() { //判断readyState就绪状态是否为4,判断status响应状态码是否为200 if (xhr.readyState==...=4 求已完成:请求完成后,并且已从服务器完全接收到响应数据 状态码 解释 200 请求成功 302 请求重定向 304 请求资源没有改变 404 请求资源补不存在,属性客户端错误 500 服务器内部错误...,并没有提到,我们就放到后面说,将全部的内容挤到一起,无论是从篇幅或者说内容的针对性都是不够强的,不过AJAX 也确实是我们成长路上不可不学的一门技术了,有什么不清楚的, 可以尝试着看一些国内外的资源站点
Ajax介绍 同步——客户端发起请求,服务端需要处理,响应,此时客户端完全等待,当服务器处理完毕,客户端重新载入页面,如果出现错误,再次发生请求,处理,等待......异步——填写表单时,页面当时就把数据发送到服务器(发送请求),服务器处理响应,把结果发给页面,过程中不不要重新加载页面,填写的错误会实时显示,不会有任何的等待 XMLHttpRequest对象——可以用于后台和服务器交换数据...一个响应包含三部分: 1 数字和文字组成的状态码,显示请求成功还是失败; 2 响应头,包含许多有用的信息,如服务器类型、日期时间、内容类型和长度; 3 响应体,相应正文; HTTP状态码 1XX:信息类...因此,前端与服务器端进行数据交互用JSON。 语法规则: 和JavaScript对象表示法类似,区别在于JSON对象的属性名必须要加上双引号。....js结尾,而是内部是否为合法的JS内容; 2.用script标签加载资源是没有跨域问题的,比如加载jQuery; 3.在资源加载进来之前定义好一个函数,这个函数接收一个参数(数据),函数里面利用这个参数做一些事情
常见的Web服务器软件有Apache HTTP Server(简称Apache)、Nginx等。 浏览器与服务器交互 在Web服务器中,请求资源又分为静态资源和动态资源。...状态码 含义 状态码 含义 200 正常 403 禁止 301 永久移动 404 找不到 302 临时移动 500 内部服务器错误 304 未修改 502 无效网关 401 未经授权 504 网关超时...遇到GIF、PNG、JPEG等类型时显示为图像。 如果浏览器遇到无法识别的类型时,在默认情况下会执行下载文件的操作。 2 Web服务器搭建 2.1 前后端交互 Web开发分为前端和后端。...属性名 说明 responseText 将响应信息作为字符串返回 responseXML 将响应信息格式化为XML Document对象并返回(只读) responseXML属性在请求失败或相应内容无法解析时的值为...原理:与XMLHttpRequest无关,是利用 标签的src属性实现了跨域请求。 在浏览器中, 哪些标签可以加载跨域资源?
// 3、css中使用浮动的目的和清除浮动的方法有哪些? // 4、xss与csrf两种攻击原理和前端的防护方法?...200状态码:表示请求已成功,请求所希望的响应头或数据体将随此响应返回 201状态码:表示请求成功并且服务器创建了新的资源,且其 URI 已经随Location 头信息返回。...这系列中最常见的有301、302状态码。 301状态码:被请求的资源已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。 ...假如服务器知道情况的话,应当使用410状态码来告知旧资源因为某些内部的配置机制问题,已经永久的不可用,而且没有任何可以跳转的地址。...5xx系列:代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。常见有500、503状态码。
)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript将所有的东西绑定在一起。...//判断ajax状态码 //判断响应状态码 //获取响应信息(普通字符串和json格式的字符串) //处理响应 3、创建并发送ajax请求 创建请求...307——申明请求的资源临时性删除 400——错误请求,如语法错误 401——请求授权失败 402——保留有效ChargeTo头响应 403——请求不允许 404——没有发现文件、查询或URl 405—...409——对当前资源状态,请求不能完成 410——服务器上不再有此资源且无进一步的参考地址 411——服务器拒绝用户定义的Content-Length属性请求 412——一个或多个请求头字段在当前请求中错误...指示值,请求也不包含If-Range请求头字段 417——服务器不满足请求Expect头字段指定的期望值,如果是代理服务器,可能是下一级服务器不能满足请求 500——服务器产生内部错误 501——服务器不支持请求的函数
①.100-199 提示消息 ②.200-299 响应成功 200 ③.300-399 重定向 304 ④.400-499 客户端请求错误 404 ⑤.500-599 服务器错误 500...(2).缓解服务器宽带瓶颈的问题,服务器可以节省出更多的带宽 (3).降低对服务器的资源消耗和运行要求 (4).降低了由于远距离而造成的加载延时 ?...=> xhr己经接收服务器响应消息头部 D.3 => LOADING XHR => 正在加载响应消息主体 E.4 => DONE => XHR接收完成响应消息主体 ②.xhr.readyState状态改变...也就是说,当状态为 200 的时候它是 "OK",当状态为 404 的时候它是 "Not Found",和 status 属性一样,当 readyState为2才有,小于 3 的时候读取这一属性会导致一个异常...为 4,这个属性保存了完整的响应体 19.Ajax 原理 在客户端浏览网页的同时,浏览器底层使用XMLHttpRequest对象,向服务器发起HTTP请求,并接收服务器的响应消息—浏览的同时服务器也在工作
AJAX优点: 最大的一点是页面无刷新,用户的体验非常好。 使用异步方式与服务器通信,具有更加迅速的响应能力。...并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。...三、关于http的状态 ajax 也是使用 http 协议的,所以也需要了解 http协议的状态。...1XX 100-101 信息提示 2XX 200-206 成功 3XX 300-305 重定向 4XX 400-415 客户端错误 5XX 500-505 服务器错误 200...501 Internal Server Error服务器遇到一个错误,使其无法对请求提供服务 这是比较齐全的状态表: ?
1:什么是ajax?ajax作用是什么? 异步的javascript和xml AJAX 是一种用于创建快速动态网页的技术。 ajax用来与后台交互 2:原生js ajax请求有几个步骤?...} 2:CORS:跨域资源共享 原理:服务器设置Access-Control-Allow-OriginHTTP响应头之后,浏览器将会允许跨域请求 限制:浏览器需要支持HTML5,可以支持POST,PUT...3:404 (未找到) 服务器找不到请求的网页。 四: 5开头状态码 5xx(服务器错误)这些状态代码表示服务器在尝试处理请求时发生内部错误。...这些错误可能是服务器本身的错误,而不是请求出错 500 (服务器内部错误) 服务器遇到错误,无法完成请求。 501 (尚未实施) 服务器不具备完成请求的功能。...例如,服务器无法识别请求方法时可能会返回此代码。 502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。 503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。