[关闭]
@UDvoid 2015-08-07T11:51:16.000000Z 字数 3778 阅读 3255

Kong技术调研&curl简介

Kong

一般流程, 授权:

  1. 进入网站后,判断未登陆用户, 引导到第三方登陆平台;

  2. 在第三方登陆平台登陆并授权, 返回code, 本地利用 code 请求得到token(此时授权成功), 再利用token得到用户个人信息(公开信息), 用于创建本地用户;

  3. 用户要访问某个api信息时,由web后台利用用户uid来请求授权,并获得对应的token(具体流程同oauth2),凭借token访问api;

前期:

认证过程:

为一个用户存储对应 API 的 token 信息, 此时可以成功访问相应的 API;

curl 命令的使用

curl,简单的命令行http工具,用于发送各种http请求,利用的参数可以附带各种信息,辅助我们在web开发中进行高效测试;

常用的一些参数:
    -i              加上头部信息
    -I              只查看头部信息
    -o
    -O
    -X              指定动词  GET, POST, PUT 等
    --data          添加数据, POST常用
    --header        添加头部信息
    --url
    --user-agent    设置user_agent(伪造)
    还支持设置cookie, 远程创建目录, 模拟表单提交等等功能

简单测试

curl -X POST http://localhost:8000/oauth2/authorize 
--data client_id=78c0d1106e9845e0c5217afbe830553d 
--data "response_type=code" 
--data "authenticated_userid=ankang_0x00" 
--data "provision_key=d9edf1d54de24d50cdbea1799133e76a" 
--data "scope=email,phone,address" 
--header "Host: mockbin.com"

curl -X POST http://localhost:8000/oauth2/token 
--data "code=d49e05b26fc14cb8cc61623fa63a43b6" 
--data "client_id=78c0d1106e9845e0c5217afbe830553d" 
--data "client_secret=31fc46bd8be14754c7c046c72acff2e7" 
--data "grant_type=authorization_code" 
--header "Host: mockbin.com" 


code=4f59f90460614a48ca631055e5280f8a  ankang_0x00

curl -X POST http://localhost:8000/oauth2/token 
--data "code=4f59f90460614a48ca631055e5280f8a" 
--data "client_id=78c0d1106e9845e0c5217afbe830553d" 
--data "client_secret=31fc46bd8be14754c7c046c72acff2e7" 
--data "grant_type=authorization_code" 
--header "Host: mockbin.com" 

token
{
    "refresh_token":"9c3e0189caab4a9ecafcfd2338b42b02",
    "token_type":"bearer",
    "access_token":"ff1aeced67ef4f3ccf99b247adf67452",
    "expires_in":7200
}


code=1b81746145a246b7c66a275a2b26691b  ankang_0x01

curl -X POST http://localhost:8000/oauth2/token 
--data "code=1b81746145a246b7c66a275a2b26691b" 
--data "client_id=78c0d1106e9845e0c5217afbe830553d" 
--data "client_secret=31fc46bd8be14754c7c046c72acff2e7" 
--data "grant_type=authorization_code" 
--header "Host: mockbin.com" 

token
{
    "refresh_token":"147f4c404c2b4abecaf0f7e19dd687e8",
    "token_type":"bearer",
    "access_token":"5c95e552e0c244a5c41f82175026e918",
    "expires_in":7200
}

Kong

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注