2017-12-09 15:17:16    164    0    0

设置docker阿里云镜像

注册阿里云容器Hub

获取对应的镜像链接

镜像地址

设置Docker Hub镜像

  1. sudo echo "DOCKER_OPTS=\"$DOCKER_OPTS --registry-mirror=https://xxxxx.mirror.aliyuncs.com\"" >> /etc/default/docker service docker restart

使用阿里云镜像下载

  1. docker pull redis
2017-12-09 13:29:24    159    0    0
## Docker安装 ### 参考[官方安装教程](https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#install-from-a-package)。 ### 安装错误 - depends on libltdl7 libsystemd-journal0 # sudo dpkg -i docker
2017-10-15 11:10:29    270    0    0
# Golang websocket example - chat ## Code https://github.com/gorilla/websocket/tree/master/examples/chat ## Client ![Client](https://leanote.com/api/file/getImage?fileId=59e2d1a6ab644108ad000806)
golang glide VCS    2017-09-25 10:49:39    1109    1    1

glide install失败:

  1. [WARN] Unable to checkout golang.org/x/crypto
  2. [ERROR] Update failed for golang.org/x/crypto: Cannot detect VCS
  3. [WARN] Unable to checkout golang.org/x/net
  4. [ERROR] Update failed for golang.org/x/net: Cannot detect VCS
  5. [ERROR] Failed to install: Cannot detect VCS
  6. Cannot detect VCS

可以通过设置golang.org镜像到github.com/golang 来解决!

  1. $ glide mirror set https://golang.org/x/mobile https://github.com/golang/mobile --vcs git
  2. $ glide mirror set https://golang.org/x/crypto https://github.com/golang/crypto --vcs git
  3. $ glide mirror set https://golang.org/x/net https://github.com/golang/net --vcs git
  4. $ glide mirror set https://golang.org/x/tools https://github.com/golang/tools --vcs git
  5. $ glide mirror set https://golang.org/x/text https://github.com/golang/text --vcs git
  6. $ glide mirror set https://golang.org/x/image https://github.com/golang/image --vcs git
  7. $ glide mirror set https://golang.org/x/sys https://github.com/golang/sys --vcs
2017-07-29 13:45:31    33    0    0
## Panics vs. Errors - Rule #1: NO SILENT BUGS - Input is either clearly correct or it is wrong - Panic: Error is easy to check before call ``` // Add adds, element-wise, the elements of s and dst,
Coffee    2017-04-19 23:32:35    128    0    0

Types of Coffee

SMTP golang SSL 腾讯企业邮箱    2017-02-25 00:25:14    1145    0    0
# Golang使用SSL发送邮件 golang的标准库里```net/smtp```提供了[使用SMTP发送email](https://golang.org/pkg/net/smtp/)的基本方法。但是现在主流的邮箱,像腾讯企业邮箱,都需要基于SSL连接才能发送邮件。 基于腾讯企业邮箱的一个发送邮件接口例子。 ``` // email.go package email import
mantis 腾讯企业邮箱 email imap smtp    2017-02-21 23:50:38    370    0    0
# Mantis配置腾讯企业邮箱 [Mantis](https://www.mantisbt.org/)是一个BUG管理系统。主要特点如下: - 用php写的系统,安装方便,不用像 bugzilla 那样安装那么多perl支持; - 系统相对简单轻磅,使用简单; - 出色的多语支持; ## 邮箱设置 在[客户端设置](http://service.exmail.qq.com/cgi-bin/
ubuntu cgi nginx Fcgiwrap    2017-02-19 23:15:21    244    0    0
# ubuntu下配置nginx支持cgi脚本 在nginx下支持cgi脚本于支持node类似的,只要在nginx直接做个转发,转发到对应的cgi套接字就好。 ## 使用Fcgiwrap Fcgiqwrap是另外一个CGI封装库,跟Simple CGI类似。 ### 安装fcgiwrap ``` apt-get install fcgiwrap ``` 安装以后fcgiwrap默认已经启动,
JWT OAuth2 API    2016-11-09 23:46:30    7258    1    0

OAuth 2和JWT - 如何设计安全的API?

Moakap译,原文 OAuth 2 VS JSON Web Tokens: How to secure an API

本文会详细描述两种通用的保证API安全性的方法:OAuth2和JSON Web Token (JWT)

假设:

  • 你已经或者正在实现API;
  • 你正在考虑选择一个合适的方法保证API的安全性;

JWT和OAuth2比较?

要比较JWT和OAuth2?首先要明白一点就是,这两个根本没有可比性,是两个完全不同的东西。

  • JWT是一种认证协议
    JWT提供了一种用于发布接入令牌(Access Token),并对发布的签名接入令牌进行验证的方法。 令牌(Token)本身包含了一系列声明,应用程序可以根据这些声明限制用户对资源的访问。

  • OAuth2是一种授权框架
    另一方面,OAuth2是一种授权框架,提供了一套详细的授权机制(指导)。用户或应用可以通过公开的或私有的设置,授权第三方应用访问特定资源。

既然JWT和OAuth2没有可比性,为什么还要把这两个放在一起说呢?实际中确实会有很多人拿JWT和OAuth2作比较。标题里把这两个放在一起,确实有误导的意思。很多情况下,在讨论OAuth2的实现时,会把JSON Web Token作为一种认证机制使用。这也是为什么他们会经常一起出现。

先来搞清楚JWT和OAuth2究竟是干什么的~

JSON Web Token (JWT)

JWT在标准中是这么定义的:

JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is digitally signed using JSON Web Signature (JWS).
- RFC7519 https://tools.ietf.org/html/rfc7519

JWT是一种安全标准。基

1/2