关于Rest和RPC

在设计API的时候,很多人会拿 REST 与 RPC 相比较,发现自己对这两者并不是很理解,于是查阅了网上相关资料加上自己的理解写下本篇文章以加深印象。

阅读更多

常用的字符编码

一、基础知识

计算机中储存的信息都是用二进制数表示的,(bit)是指计算机里存放的二进制值(0/1),而 8 个位组合成的“位串”称为一个 字节
字符集(Charset):是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。
字符编码(Character encoding)也称字集码,是把字符集中的字符编码为指定集合中某一对象(例如:比特模式、自然数序列、8 位组或者电脉冲),以便文本在计算机中存储和通过通信网络的传递。

阅读更多

TSL握手小记

超文本传输安全协议(英语:Hypertext Transfer Protocol Secure,缩写:HTTPS,常称为 HTTP over TLS,HTTP over SSL 或 HTTP Secure)是一种通过计算机网络进行安全通信的传输协议。

HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 协议来加密数据包。

TLS 协议位于传输层之上,应用层之下,使用了两种加密技术,分别为:对称加密非对称加密。使用非对称密钥加密用于传输对称密钥来保证传输过程的安全性,之后使用对称密钥加密进行通信来保证通信过程的效率。

阅读更多

API多版本控制

现状

移动互联网时代,面对市场变化,产品必须不停迭代,而在升级中我们业务需求可能不断在更新,但是我们势必又要保证原来功能的可用性,不能因为用户不升级而导致旧版本无法使用,只能引导用户去更新,而不是强制用户升级。所以我们需要对产品多版本做兼容,解决的核心方向在于服务端API的多版本管理

阅读更多

github缩写大全

混Github的时候经常看到类似 LGTM 之类的谜之缩写,这里整理一下这些缩写的含义。

  • PR: Pull Request. (给项目提交代码)
  • LGTM: Looks Good To Me. (代码看起来不错,可以合并)
  • SGTM: Sounds Good To Me. (同上)
  • WIP: Work In Progress. (提示管理员,代码正在开发中,可以不忙 Code Review,主要应用于非常大的 PR, 分批次提交代码)
  • PTAL: Please Take A Look. (提示别人来看看)
  • TBR: To Be Reviewed. (提示管理员可以进行 Code Review)
  • TL;DR: Too Long; Didn’t Read. (代码太长, 不方便 Code Review)
  • TBD: To Be Done(or Defined/Discussed/Decided/Determined). (用于表示代码开发状态, 例如:完成,讨论中,延期等)

github-invalid-username-or-password

问题描述

git clone 一个项目的时候执行命令

1
git clone XXX

输入帐号名和密码(没有输错),报以下错误:

1
2
3
4
Username for 'https://github.com': xxxx
Password for 'https://xxxx@github.com':
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/xxxx/xxx.git/'
阅读更多

记一次自动格式化的问题

近日接盘了一个几年前的旧项目,由于 VS Code 开启了 Format On Save 选项,保存的时候自动格式化整个文件的代码。
正常情况下格式化代码基本没有任何风险,除非工具有问题,良好的代码格式有利于后面的工作。
在本地测试一切正常,推送到测试服务器运行错误,错误详情:

阅读更多