johndab / lumen-message-microservice
该包已被 废弃 且不再维护。未建议替换包。
lumen-message-microservice.
dev-master
2020-04-07 21:33 UTC
Requires
- php: >=7.1.3
- laravel/lumen-framework: 5.7.*
- vlucas/phpdotenv: ~2.2
Requires (Dev)
- fzaninotto/faker: ~1.4
- mockery/mockery: ~1.0
- phpunit/phpunit: ~7.0
This package is auto-updated.
Last update: 2022-11-18 00:38:45 UTC
README
可作为独立微服务部署,拥有自己的数据库,提供用于管理线程和消息的 REST API
先决条件
- php
- composer
- MySql
安装
- 将
.env.example
重命名为.env
- 更新
.env
- 将
APP_DEBUG
设置为false
并指定APP_KEY
(32个随机字符) 和APP_TOKEN
- 创建空数据库并设置连接详情
- 您可以指定
APP_URL_PREFIX
以添加所有端点的前缀
- 将
- 运行
# Install dependencies and optimize composer autoloader $ composer install --optimize-autoloader --no-dev # Create all tables $ php artisan migrate
线程
每个请求都必须有包含在
App-Token
头部中的正确令牌,该令牌在.env
中指定
获取所有客户端线程
GET /threads/{clientId}
- URL
- int clientId (必需)
添加线程
POST /thread
- 请求体
- string title* - 新线程的标题
- array(string) clients - 分配给线程的客户端的 UUID
- string params - 包含此线程参数的 JSON
更新线程
PUT /thread/{threadId}/{clientId?}
- URL
- int threadId* - 要更新的线程的 ID
- string clientId - 如果指定,将检查客户端是否有权访问线程
- 请求体
- string title - 新标题(如果为 null 则不更新)
- string params - 新参数
删除线程
DELETE /thread/{threadId}/{clientId?}
- URL
- int threadId* - 要删除的线程的 ID
- string clientId - 如果指定,将检查客户端是否有权访问线程
添加客户端
POST /thread/clients/{threadId}/{clientId?}
- URL
- int threadId* - 要删除的线程的 ID
- string clientId - 如果指定,将检查客户端是否有权访问线程
- 请求体
- array(string) clients - 要添加的客户端的 ID
移除客户端
DELETE /thread/clients/{threadId}/{clientId?}
- URL
- int threadId* - 要删除的线程的 ID
- string clientId - 如果指定,将检查客户端是否有权访问线程
- 请求体
- array(string) clients - 要移除的客户端的 ID
消息
获取消息
GET /messages/{threadId}/{clientId?}
- URL
- int threadId* - 线程的 ID
- string clientId - 如果指定,将检查客户端是否有权访问线程
- 查询字符串
- int take - 要获取的消息数(默认:10)
- int skip - 要跳过的消息数(默认:0)
添加消息
POST /message/{threadId}
- URL
- int threadId* - 线程的 ID
- 请求体
- string content* - 消息内容
- int clientId*
- string params - 包含此消息参数的 JSON
许可协议
本项目采用 MIT 许可协议授权