第666页

  • RESTful API 最佳实践

    RESTful API 最佳实践

    RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是,客户端发出的数据操作指令都是"动词 + 宾语"的结构。比如,GET /articles这个命令,GET是动词,/articles是宾语。 动词通常就是五种 HTTP 方法,对应 CRUD 操作。 GET:读取(Rea...

    期权知识 2020-08-18 548 0
  • Git 原理入门

    Git 原理入门

    Git 是最流行的版本管理工具,也是程序员的必备技能之一。 即使天天使用它,很多人也未必了解它的原理。Git 为什么可以管理版本?git add、git commit这些基本命令,到底在做什么,你说得清楚吗? 这篇文章用一个实例,解释 Git 的运行过程,帮助你理解 Git 的原理。 一、初始化 首先,让我们创建一个项目目录,并进入该目录。 $ mkdir git-demo-project $ cd git-demo-project 我们打算对该项目进行版本管理,第一件事就是使用git in...

    期权知识 2020-08-18 524 0
  • Page Visibility API 教程

    Page Visibility API 教程

    一、简介 有时候,开发者需要知道,用户正在离开页面。常用的方法是监听下面三个事件。 pagehide beforeunload unload 但是,这些事件在手机上可能不会触发,页面就直接关闭了。因为手机系统可以将一个进程直接转入后台,然后杀死。 用户点击了一条系统通知,切换到另一个 App。 用户进入任务切换窗口,切换到另一个 App。 用户点击了 Home 按钮,切换回主屏幕。 操作系统自动切换到另一个 App(比如,收到一个电话)。 上面这些情况,都会导致...

    期权知识 2020-08-18 550 0
  • Flexbox 布局的最简单表单

    Flexbox 布局的最简单表单

    弹性布局(Flexbox)逐渐流行,越来越多人使用,因为它写 CSS 布局真是太方便了。 三年前,我写过 Flexbox 的介绍(上,下),但是有些地方写得不清楚。今天,我看到一篇教程,才意识到一个最简单的表单,就可以解释 Flexbox,而且内容还很实用。 下面,你只需要10分钟,就可以学会简单的表单布局。 一、<form> 元素 表单使用<form>元素。 <form></form> 上面是一个空表单。根据 HTML 标准,它是一个块级元素,默...

    期权知识 2020-08-18 562 0
  • Page Lifecycle API 教程

    Page Lifecycle API 教程

    两周前,我介绍了 Page Visibility API。有了它,就可以监听各种情况的网页卸载。 但是,它没有解决一个问题。Android、iOS 和最新的 Windows 系统可以随时自主地停止后台进程,及时释放系统资源。也就是说,网页可能随时被系统丢弃掉。Page Visibility API 只在网页对用户不可见时触发,至于网页会不会被系统丢弃掉,它就无能为力了。 为了解决这个问题,W3C 新制定了一个 Page Lifecycle API,统一了网页从诞生到卸载的行为模式,并且定义了新的事件,允许开发...

    期权知识 2020-08-18 483 0
  • awk 入门教程

    awk 入门教程

    awk是处理文本文件的一个应用程序,几乎所有 Linux 系统都自带这个程序。 它依次处理文件的每一行,并读取里面的每一个字段。对于日志、CSV 那样的每行格式相同的文本文件,awk可能是最方便的工具。 awk其实不仅仅是工具软件,还是一种编程语言。不过,本文只介绍它的命令行用法,对于大多数场合,应该足够用了。 一、基本用法 awk的基本用法就是下面的形式。 # 格式 $ awk 动作 文件名 # 示例 $ awk '{print $0}' demo.txt 上面示例中,demo.txt是...

    期权知识 2020-08-18 536 0
  • 异步 API 的设计

    异步 API 的设计

    网站的前后端通信,往往会有异步请求,这时应该怎么设计 API? 我最近读到一篇文章,作者介绍了他的做法,设计得很精细,我觉得值得借鉴,可以当作异步 API 的标准设计。 一、同步 API 为了便于比较,先看看同步 API 的设计。下面是一个很简单的例子。 客户端发出一个请求,要求创建资源。 POST https://api.service.io/stars name='Death Star' 服务器回应 201。 HTTP/1.1 201 Created Location: /sta...

    期权知识 2020-08-18 586 0
  • git bisect 命令教程

    git bisect 命令教程

    git bisect是一个很有用的命令,用来查找哪一次代码提交引入了错误。 它的原理很简单,就是将代码提交的历史,按照两分法不断缩小定位。所谓"两分法",就是将代码历史一分为二,确定问题出在前半部分,还是后半部分,不断执行这个过程,直到范围缩小到某一次代码提交。 本文通过一个实例,解释如何使用这个命令。下面是一个代码库,请将它克隆到本地。 $ git clone git@github.com:bradleyboy/bisectercise.git $ cd bisectercise 这个库是一个网...

    期权知识 2020-08-18 532 0
  • 数据库表连接的简单解释

    数据库表连接的简单解释

    关系型数据库最难的地方,就是建模(model)。 错综复杂的数据,需要建立模型,才能储存在数据库。所谓"模型"就是两样东西:实体(entity)+ 关系(relationship)。 实体指的是那些实际的对象,带有自己的属性,可以理解成一组相关属性的容器。关系就是实体之间的联系,通常可以分成"一对一"、"一对多"和"多对多"等类型。 在关系型数据库里面,每个实体有自己的一张表(table),所有属性都是这张表的字段(field),表与表之间根据关联字段"连接"(join)在一起。所以,表的连接是关系型...

    期权知识 2020-08-18 475 0
  • 找回密码的功能设计

    找回密码的功能设计

    所有需要登录的网站,都会提供"找回密码"的功能,防止用户忘记密码。 正确设计这个功能,保证安全可靠,并不简单。下面就是安全专家 Troy Hunt 给出的设计指南。 一、如何保存密码 一个网站要想保证密码安全,第一步就是以正确的方法保存密码。一般说来,密码有三种保存方式。 (1)明文保存 "明文保存"就是用户的密码原文不动地写入数据库。这种方式最不安全,极易泄漏,应该严格禁用。 (2)加密保存 "加密保存"就是使用密钥,将密码加密后,以密文保存进数据库。这种方式虽然有一定的安全性,但是终究还是...

    期权知识 2020-08-18 555 0