From 41112599136fad7d91624119a2a46a8d453d0b40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A6=82=E6=A2=A6=E6=8A=80=E6=9C=AF?= <596392912@qq.com> Date: Fri, 7 Jan 2022 22:47:58 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E6=B7=BB=E5=8A=A0=20idea=20http?= =?UTF-8?q?=20=E6=96=87=E4=BB=B6=EF=BC=8C=E6=96=B9=E4=BE=BF=20http=20api?= =?UTF-8?q?=20=E8=B0=83=E8=AF=95=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/http-api.md | 4 +- mica-mqtt-broker/http/http-client.env.json | 7 ++ mica-mqtt-broker/http/mica-mqtt-api.http | 94 +++++++++++++++++++++ mica-mqtt-example/http/http-client.env.json | 7 ++ mica-mqtt-example/http/mica-mqtt-api.http | 94 +++++++++++++++++++++ 5 files changed, 204 insertions(+), 2 deletions(-) create mode 100644 mica-mqtt-broker/http/http-client.env.json create mode 100644 mica-mqtt-broker/http/mica-mqtt-api.http create mode 100644 mica-mqtt-example/http/http-client.env.json create mode 100644 mica-mqtt-example/http/mica-mqtt-api.http diff --git a/docs/http-api.md b/docs/http-api.md index c064098..4c997de 100644 --- a/docs/http-api.md +++ b/docs/http-api.md @@ -115,7 +115,7 @@ $ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/subscr 取消订阅 `a` 主题 ```bash -$ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/unsubscribe" -d '{"topic":"a","qos":1,"clientId":"example"}' +$ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/unsubscribe" -d '{"topic":"a","clientId":"example"}' {"code":0} ``` @@ -203,7 +203,7 @@ $ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/subscr 一次性取消订阅 `a`, `b` 主题 ```bash -$ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/unsubscribe/batch" -d '[{"topic":"a","qos":1,"clientId":"example"},{"topic":"b","qos":1,"clientId":"example"}]' +$ curl -i --basic -u mica:mica -X POST "http://localhost:8083/api/v1/mqtt/unsubscribe/batch" -d '[{"topic":"a","clientId":"example"},{"topic":"b","clientId":"example"}]' {"code":0} ``` diff --git a/mica-mqtt-broker/http/http-client.env.json b/mica-mqtt-broker/http/http-client.env.json new file mode 100644 index 0000000..d0c70d8 --- /dev/null +++ b/mica-mqtt-broker/http/http-client.env.json @@ -0,0 +1,7 @@ +{ + "dev": { + "host": "127.0.0.1:8083", + "username": "mica", + "password": "mica" + } +} diff --git a/mica-mqtt-broker/http/mica-mqtt-api.http b/mica-mqtt-broker/http/mica-mqtt-api.http new file mode 100644 index 0000000..fa5edd0 --- /dev/null +++ b/mica-mqtt-broker/http/mica-mqtt-api.http @@ -0,0 +1,94 @@ +### mqtt publish +POST http://{{host}}/api/v1/mqtt/publish +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "payload":"Hello World", + "qos":1, + "retain":false, + "clientId":"example" +} + +### mqtt subscribe +POST http://{{host}}/api/v1/mqtt/subscribe +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "qos":1, + "clientId":"example" +} + +### mqtt unsubscribe +POST http://{{host}}/api/v1/mqtt/unsubscribe +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "clientId":"example" +} + +### mqtt publish batch +POST http://{{host}}/api/v1/mqtt/publish/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a/b/c", + "payload":"Hello World", + "qos":1, + "retain":false, + "clientId":"example" + }, + { + "topic":"a/b/c", + "payload":"Hello World Again", + "qos":0, + "retain":false, + "clientId":"example" + } +] + +### mqtt subscribe batch +POST http://{{host}}/api/v1/mqtt/subscribe/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a", + "qos":1, + "clientId":"example" + }, + { + "topic":"b", + "qos":1, + "clientId":"example" + }, + { + "topic":"c", + "qos":1, + "clientId":"example" + } +] + +### mqtt unsubscribe batch +POST http://{{host}}/api/v1/mqtt/unsubscribe/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a", + "clientId":"example" + }, + { + "topic":"b", + "clientId":"example" + } +] diff --git a/mica-mqtt-example/http/http-client.env.json b/mica-mqtt-example/http/http-client.env.json new file mode 100644 index 0000000..d0c70d8 --- /dev/null +++ b/mica-mqtt-example/http/http-client.env.json @@ -0,0 +1,7 @@ +{ + "dev": { + "host": "127.0.0.1:8083", + "username": "mica", + "password": "mica" + } +} diff --git a/mica-mqtt-example/http/mica-mqtt-api.http b/mica-mqtt-example/http/mica-mqtt-api.http new file mode 100644 index 0000000..fa5edd0 --- /dev/null +++ b/mica-mqtt-example/http/mica-mqtt-api.http @@ -0,0 +1,94 @@ +### mqtt publish +POST http://{{host}}/api/v1/mqtt/publish +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "payload":"Hello World", + "qos":1, + "retain":false, + "clientId":"example" +} + +### mqtt subscribe +POST http://{{host}}/api/v1/mqtt/subscribe +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "qos":1, + "clientId":"example" +} + +### mqtt unsubscribe +POST http://{{host}}/api/v1/mqtt/unsubscribe +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +{ + "topic":"a/b/c", + "clientId":"example" +} + +### mqtt publish batch +POST http://{{host}}/api/v1/mqtt/publish/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a/b/c", + "payload":"Hello World", + "qos":1, + "retain":false, + "clientId":"example" + }, + { + "topic":"a/b/c", + "payload":"Hello World Again", + "qos":0, + "retain":false, + "clientId":"example" + } +] + +### mqtt subscribe batch +POST http://{{host}}/api/v1/mqtt/subscribe/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a", + "qos":1, + "clientId":"example" + }, + { + "topic":"b", + "qos":1, + "clientId":"example" + }, + { + "topic":"c", + "qos":1, + "clientId":"example" + } +] + +### mqtt unsubscribe batch +POST http://{{host}}/api/v1/mqtt/unsubscribe/batch +Content-Type: application/json +Authorization: Basic {{username}} {{password}} + +[ + { + "topic":"a", + "clientId":"example" + }, + { + "topic":"b", + "clientId":"example" + } +] -- GitLab