http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
http://blog.csdn.net/seccloud/article/details/8192707