• JavaScript的异步通信——XMLHttpRequest详解

    简介浏览器与服务器之间,采用 HTTP 协议通信。用户在浏览器地址栏键入一个网址,或者通过网页表单向服务器提交内容,这时浏览器就会向服务器发出 HTTP 请求。1999年,微软公司发布 IE 浏览器5.0版,第一次引入新功能:允许 JavaScript 脚本向服务器发起 HTTP 请求。这个功能当时并没有引起注意,直到2004年 Gmail 发布和2005年 Google Map 发布,才引起广泛重视。2005年2月,AJAX 这个词第一次正式提出,它是 Asynchronous JavaScr...
  • CORS——跨域资源共享协议标准

    CORS 是一个 W3C 标准,全称是“跨域资源共享”(Cross-origin resource sharing)。它允许浏览器向跨域的服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。简介CORS 需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能。整个 CORS 通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS 通信与普通的 AJAX 通信没有差别,代码完全一样。浏览器一旦发现 AJAX 请求跨域,就会自动添加一些附加的头信息,...
  • img元素下方空白的来源

    开发中经常会遇到图片元素img下方多余的空白,到底是怎么回事呢?要弄明白这个问题首先要弄明白CSS对于 display: inline 元素的 vertical-align 各个值的含义。vertical-align 的默认值是 baseline,这是一个西文排版才有的概念:  可以看到,出现在baseline下面的是 p 啊,q 啊, g 啊这些字母下面的那个尾巴。对比一下 vertical-align 的另外两个常见值,top 和 bottom:  ...
    CSS
  • Git修正错误

    人非圣贤孰能。所以每个VCS都提供一个功能来修复错误,直到Git控制的某一点上。 Git提供了一个功能,可用于撤消对本地存储库所做的修改。假设用户意外地对本地存储库进行了一些更改,然后想要撤消这些更改。 在这种情况下,恢复操作起着重要的作用。恢复未提交的更改假设我们不小心修改了本地存储库中的一个文件,此时想撤销这些修改。为了处理这种情况,我们可以使用git checkout命令。可以使用此命令来还原文件的内容。为了更好的演示,我们首先在 sample/src 目录下创建一个文...
    Git
  • Git入门文档

    假如只能阅读一章来学习 Git,那么本教程绝对是一个不二的选择。本章内容涵盖你在使用 Git 完成各种工作中将要使用的各种基本命令。 在学习完本章之后,你应该能够配置并初始化一个仓库(repository)、开始或停止跟踪(track)文件、暂存(stage)或提交(commit)更改。 本章也将演示如何配置 Git 来忽略指定的文件和文件模式、如何迅速而简单地撤销错误操作、如何浏览项目的历史版本以及不同提交(commits)间的差异、如何向远程仓库推送(push)以及如何从远程仓库拉取(pul...
    Git
  • 八个贴士,让你在2018年开发更好的Node.js应用

    八个贴士,让你在2018年开发更好的Node.js应用

    在这篇文章中,我们收集了一些,我们认为在2018年里,作为一位Node.js开发者所需要的贴士。你可随意挑选,作用在新的一年的实践中。Tip #1: 使用 async - awaitAsync - await 在Node.js 8 中震撼登场了。它改变了我们处理同步事件的方式,并简化了我们先前所写的那些繁杂的代码。如果你还没有使用async - await,参考我们的介绍 。使用它,可以帮助你更新以往对 async progr...
  • HTTP之多事务的连接方式

    HTTP是一个应用层协议,基于TCP/IP。HTTP的连接其实就是TCP连接,从头到尾都是。只不过在其中传递的数据包不是任意的二进制,而是HTTP规定好的数据包。数据的发送也不是任意的,而是一个请求一个响应(请求和响应一对构成一个事务)。我们关心连接的使用方式,是因为它事关多事务情况下的性能。而在http中,处理多事务的连接有4种方式:并行连接Keep-Alive持久连接管线(pipeline)。我们拿一个简单的文件作为多事务的案例(文件名为1.html):<html> <bo...
  • HTTP之响应状态码

    状态码是一个三位的数字,用来告知客户端请求的处理结果。三位数字的第一位是一个分类,指明状态码的类型,以此数字把状态码分为5类:1xx: 信息类 。2xx: 成功。请求被成功的接受或者理解,或者执行。我们常见的200 OK就是这个分类内的。3xx: 重定向 - 为完成请求,需要进一步的行动。我们常见的301 Redirect就是这个分类内的。4xx: 客户端错误。客户端提交的数据错误,不能被理解或者接受等等。我们常见的404 Not Found 就是这个分类内的。5xx: 服务器错误。错误发生了,...