武汉web培训
达内武汉中心

15827352908

热门课程

什么是web框架?

  • 时间:2018-01-31 17:41
  • 发布:武汉WEB培训班
  • 来源:互联网

    什么是Web框架?这篇文章中,我将探索反复被忽略的 web 框架基础的话题.

    Web 应用框架,或者简单的说是"Web 框架",其实是建立 web 应用的一种方式.从简单的博客系统到复杂的富 AJAX 应用,web 上每个页面都是通过写代码来生成的.

武汉WEB培训班

    我发现很多人都热衷于学习 web 框架技术,例如 Flask 或这 Django 之类的,但是很多人并不理解什么是 web 框架,或者它们是如何工作的.
    这篇文章中,我将探索反复被忽略的 web 框架基础的话题.阅读完这篇文章,你应该首先对什么是 web 框架以及它们为什么会存在有更深的认识.这会让你学习一个新的 web 框架变得简单的多,还会让你在使用不同的框架的时候做个明知的选择.
    在我们讨论框架之前,我们需要理解 Web 如何"工作"的.为此,我们将深入挖掘你在浏览器里输入一个 URL 按下 Enter 之后都发生了什么.在你的浏览器中打开一个新的标签,浏览http://www.jeffknupp.com.我们讨论为了显示这个页面,浏览器都做了什么事情(不关心 DNS 查询).
    Web 服务器
    每个页面都以 HTML 的形式传送到你的浏览器中,HTML 是一种浏览器用来描述页面内容和结构的语言.那些负责发送 HTML 到浏览器的应用称之为"Web 服务器",会让你迷惑的是,这些应用运行的机器通常也叫做 web 服务器.
    然而,最重要的是要理解,到最后所有的 web 应用要做的事情就是发送 HTML 到浏览器.不管应用的逻辑多么复杂,最终的结果总是将 HTML 发送到浏览器(我故意将应用可以响应像 JSON或者CSS等不同类型的数据忽略掉,因为在概念上是相同的).
    web 应用如何知道发送什么到浏览器呢?它发送浏览器请求的任何东西.
    HTTP
    浏览器从 web 服务器(或者叫应用服务器)上使用 HTTP 协议下载网站,HTTP 协议是基于一种 请求-响应(request-response)模型的.客户端(你的浏览器)从运行在物理机器上的 web 应用请求数据,web 应用反过来对你的浏览器请求进行响应.
    重要的一点是,要记住通信总是由客户端(你的浏览器)发起的,服务器(也就是 web 服务器)没有办法创建一个链接,发送没有经过请求的数据给你的浏览器.如果你从 web 服务器上接收到数据,一定是因为你的浏览器显示地发送了请求.
    HTTP Methods
    在 HTTP 协议中,每条报文都关联方法(method 或者 verb),不同的 HTTP 方法对应客户端可以发送的逻辑上不同类型的请求,反过来也代表了客户端的不同意图.例如,请求一个 web 页面的 HTML,与提交一个表单在逻辑上是不同的,所以这两种行为就需要使用不同的方法.
    HTTP GET
    GET 方法就像其听起来的那样,从 web 服务器上 get(请求)数据.GET 请求是到目前位置最常见的一种 HTTP 请求,在一次 GET 请求过程中,web 应用对请求页面的 HTML 进行响应之外,就不需要做任何事情了.特别的,web 应用在 GET 请求的结果中,不应该改变应用的状态(比如,不能基于 GET 请求创建一个新帐号).正是因为这个原因,GET 请求通常认为是"安全"的,因为他们不会导致应用的改变.
    HTTP POST
    显然,除了简单的查看页面之外,应该还有更多与网站进行交互的操作.我们也能够向应用发送数据,例如通过表单.为了达到这样的目的,就需要一种不同类型的请求方法:POST.POST 请求通常携带由用户输入的数据,web 应用收到之后会产生一些行为.通过在表单里输入你的信息登录一个网站,就是 POST 表单的数据给 web 应用的.
    不同于 GET 请求,POST 请求通常会导致应用状态的改变.在我们的例子中,当表单 POST 之后,一个新的账户被创建.不同于 GET 请求,POST 请求不总是生成一个新的 HTML 页面发送到客户端,而是客户端使用响应的响应码(response code)来决定对应用的操作是否成功.
    HTTTP Response Codes
    通常来说,web 服务器返回 200 的响应码,意思是,"我已经完成了你要求我做的事情,一切都正常".响应码总是一个三位数字的代号,web 应用在每个响应的同时都发送一个这样的代号,表明给定的请求的结果.响应码 200 字面意思是"OK",是响应一个 GET 请求大多情况下都使用的代号.然而对于 POST 请求, 可能会有 204("No Content")发送回来,意思是"一切都正常,但是我不准备向你显示任何东西".

    POST 请求仍然会发送一个特殊的 URL,这个 URL 可能和提交数据的页面不同,意识这一点是至关重要的.还是以我们的登录为例,表单可能是在 www.foo.com/signup页面,然而点击submit,可能会导致带有表单数据的 POST 请求发送到www.foo.com/process_sigup上.POST 请求要发送的位置在表单的 HTML 中有特别标明

    更多武汉WEB培训相关咨询,请扫描下方二维码

更多武汉WEB培训相关咨询,请扫描下方二维码

武汉WEB培训

马上预约七天免费试听课

姓名:

电话:

上一篇:web开发应该知道的技术
下一篇:武汉web培训机构——什么是web应用?

web前端和web后端

三层交换机的由来

用AJAX读取动态文件

什么是web框架?

选择城市和中心
贵州省

广西省

海南省

有位老师想和您聊一聊