kong ubuntu 16.04 学习笔记(2)

1.添加API

curl -i -X POST \
 --url http://localhost:8001/apis/ \
 --data 'name=example-api' \
 --data 'hosts=example.com' \
 --data 'upstream_url=http://mockbin.org'

我自己测试把 name=接口名,hosts=方法名,upstream_url=http://10.21....:5057/xx/xx

创建成功后会有:HTTP/1.1 201 Created 后面还有 一些json信息(创建时间、读取超时时间等等)

2.请求添加好的API

curl -i -X GET \
 --url http://localhost:8000/ \
 --header 'Host: example.com'

请求成功:HTTP/1.1 200 OK 后面还有这个页面的html信息

3.使用key-auth 认证 插件

1)接口使用认证插件

curl -i -X POST \
 --url http://localhost:8001/apis/example-api/plugins/ \
 --data 'name=key-auth'

--data "config.hide_credentials=true"

这种方式是对 第一步 添加的 name=example-api 这个接口使用认证插件(官网上有不区分接口名称,对所有接口都使用插件的例子)

创建成功后我们再 使用 curl -i -X GET --url 'http://localhost:8000' --header 'Host: example.com' 访问这个地址就会被拒绝,返回:

HTTP/1.1 401 Unauthorized

要使用这个接口必须使用 通过消费者 生成出的 apikey,

2)生成消费者

使用  curl -X POST http://localhost:8001/consumers/     --data "username=USERNAME"     --data "custom_id=CUSTOM_ID"  创建一个消费者,一个消费者可以有多个认证

3)生成apikey

创建好消费者后,使用curl -X POST http://localhost:8001/consumers/{USERNAME}/key-auth -d '' 此处的 USERNAME 对应消费者名称,会生成key

{"id":"e5839af9-9f91-4e99-8671-498ac9a476f0","created_at":1517475858000,"key":"928qVqMMvWp0w1Flz75EXLZNUMhkq48g","consumer_id":"596d937a-c0be-4777-bcac-dca575691fac"}

再使用  curl -i -X GET --url 'http://localhost:8000' --header 'HOST:example.com' -H 'apikey:928qVqMMvWp0w1Flz75EXLZNUMhkq48g' 就可以访问了。

 

posted @ 2018-02-01 17:52  wangchuanjie  阅读(204)  评论(0编辑  收藏  举报