概念

什么是CSRF令牌,它如何工作?

许多现代的Web框架(如Laravel或Play框架)都具有内置支持,可保护您的Web应用程序免受跨站点请求伪造  (CSRF)的侵害  。这是一件好事,但是并不是每个开发人员何时以及如何使用它都总是不清楚。在本文中,我尝试给出一些(希望)易于理解的答案。

在潜入之前,让我们提醒自己一些规则和限制:…

    

中国开源许可证-木兰宽松许可证介绍

引言

开源(Open Source)是人类在互联网发展进程中探索出的一种面向全球的大规模协作生产方式,它以开放共享、合作共赢为宗旨,有效地推进了全球化进程。当前,我国开发者和企业参与开源的热情不断高涨,开源产业也逐步完善;然而,我国面向开源的环境、技术、人才、生态等方面还存在诸多问题。推动国内外开源的交流与合作,促进产学研用结合,保护广大开源参与者的利益,造就有影响力、可持续发展的开源生态系统,是相关行业当前的一项重要任务。

开源许可证是对开源软件的使用、复制、修改和分发等行为进行规范和约束的一种具有法律效力的格式合同,是开源运动的基石。目前,经开源促进会(OSI)认证的开源软件许可证共有 80 多个,它们都由国外或国际组织机构使用英文发布。对于来自世界各地的广大开源参与者而言,现有许可证中的条款的表述比较晦涩,容易因理解有误而违约。同时,很多许可证对被许可方责任和义务的表述不够完善,容易导致难以解决的法律纠纷。此外,当前国际形势需要来自全球不同地方的更多声音和力量来倡导开源。

HTTP/3 都来了,你却还在用 HTTP/1.1?

2015 年 HTTP/2 标准发表后,大多数主流浏览器也于当年年底支持该标准。此后,凭借着多路复用、头部压缩、服务器推送等优势,HTTP/2 得到了越来越多知名互联网公司的青睐。就在大家刚刚为了解了 HTTP/2 新特性而舒口气儿的时候,HTTP/3 却又紧锣密鼓地准备着了。今天就跟大家聊一聊这第三代 HTTP 技术。…

解密 HTTP/2 与 HTTP/3 的新特性

HTTP/2 相比于 HTTP/1.1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作。当然,兼容问题以及如何优雅降级应该是国内还不普遍使用的原因之一。虽然 HTTP/2 提高了网页的性能,但并不代表它已经完美,HTTP/3 就是为了解决 HTTP/2 存在的一些问题而被推出的。

HTTP/1.1 发明以来发生了哪些变化?

如果仔细观察打开那些最流行的网站首页所需要下载的资源的话,会发现一个非常明显的趋势。近年来,加载网站首页需要的下载的数据量在逐渐增加,并已经超过了 2100K。但在这里我们更应该关心的是:平均每个页面为了完成显示与渲染所需要下载的资源数已经超过了 100 个。…

HTTP/3 的过去、现在和未来

HTTP 协议为 Web 的发展提供了驱动力,它始于 1991 年的 HTTP/0.9,在 1999 年演变为 HTTP/1.1,并由 IETF(互联网工程任务组)负责进行标准化。HTTP/1.1 存在了很长一段时间,但 Web 不断变化的需求要求推出更好的协议,于是 HTTP/2 在 2015 年出现了。去年年底,IETF 又推出新版本 HTTP/3。对于有些人来说,这是一个惊喜,但也会让他们感到有一点点困惑。想要更好地了解 HTTP/3 的前世今生,以及它接下来的规划,来自 Cloudflare 博客的这篇最新文章将为你指点迷津。

在去年的“生日周”期间,我们宣布了对新生 Web 标准 QUIC 和 HTTP/3(当时称为“ HTTP over QUIC”)的初步支持,从而可以更快、更可靠、更安全地连接到网站和 API 等 Web 端点。我们还请客户加入一个等候队列,这样 QUIC 和 HTTP/3

论「版本号」的正确使用方式

0

版本号,说白了就是我们为项目的每个不同版本起的标识号,其被广泛运用于开发的各种场景:NPM(Node Package Manager) 的版本定义、对 NPM 包的特定版本的依赖指定、Git 的 daily 版本号分支等等。面对如此多的场景,版本号的命名却存在很大问题。例如:

  • 开始写一个新项目 / 模块时,不管三七二十一,都从0.0.1起版本,直到项目不再维护时,版本还停留在0.0.48,前两位永远都是0
  • API 变化巨大,而版本号雷打不动一步一个脚印。一个二方包从0.0.8升级到0.0.9就引起了整个项目的崩溃。
  • 依赖二方 / 三方包时,不知道该依赖哪个版本,有时随便指定了一个,有时则直接依赖了*

持续集成服务 Travis CI 教程

编写代码只是软件开发的一小部分,更多的时间往往花在构建(build)和测试(test)。

为了提高软件开发的效率,构建和测试的自动化工具层出不穷。Travis CI 就是这类工具之中,市场份额最大的一个。

本文介绍 Travis CI 的基本用法。用好这个工具不仅可以提高效率,还能使开发流程更可靠和专业化,从而提高软件的价值。而且,它对于开源项目是免费的,不花一分钱,就能帮你做掉很多事情。…