spiral / writeaway
Writeaway编辑器的PHP API服务器
Requires
- php: >=8.0
- ext-imagick: *
- doctrine/collections: ^1.6
- spiral/cycle-bridge: ^1.0
- spiral/framework: ^2.9
- spiral/helpers: ^1.0
Requires (Dev)
- laminas/laminas-diactoros: ^2.4
- phpunit/phpunit: ^9.5
- spiral/code-style: ^1.0
- spiral/roadrunner: ^1.9
This package is auto-updated.
Last update: 2024-09-16 19:21:47 UTC
README
许可证
MIT许可证(MIT)。请参阅LICENSE
获取更多信息。由Spiral Scout维护。
待办事项
- 为公共服务添加测试
用法
- 在App中注册
WriteawayBootloader
请注意,它必须在
RouterBootloader
之后注册。
- 实现
MetaProviderInterface
- 如果您想添加重置命令,可以添加
WriteawayCommandBootloader
。
请注意,它使用
TokenizerBootloader
,因此必须在CommandsBootloader
之前注册。
- 如果您想使用现成的视图包,可以添加
WriteawayViewsBootloader
。
API端点
列出图像
GET 或 POST writeaway:images:list
获取所有可用图像的完整列表。
示例响应
{ "status": 200, "data": [ { "id": "unique-id", "src": "image1.png" }, { "id": "unique-id", "thumbnailSrc": "image2-th.png", "src": "image2.png" } ] }
可能的图像字段
上传图像
POST writeaway:images:upload
上传图像文件。
示例请求
image
- FormData文件
示例响应
{ "status": 200, "data": [ { "id": "unique-id", "src": "image1.png" } ] }
有关可能的图像字段,请参阅上一个端点。
删除图像
POST 或 DELETE writeaway:images:delete
删除特定图像。
示例请求
{ "id": "unique-id" }
示例响应
{ "status": 200 }
获取片段
GET 或 POST writeaway:pieces:get
通过其id
和type
获取特定片段。
示例请求
{ "id": "unique-id", "type": "piece-type" }
如果没有找到片段,将创建一个新的。`id`是所有片段中的唯一值。
示例响应
{ "status": 200, "data": { "id": "unique-id", "type": "piece-type", "data": { "key": "value", "key...": "value..." } } }
如果发生验证错误,示例响应将是
{ "status": 400, "errors": { "field-name": "error-message", "field-name...": "error-message..." } }
批量获取片段
GET 或 POST writeaway:pieces:bulk
通过其id
和type
获取特定片段。
示例请求
{ "pieces": [ { "id": "unique-id", "type": "piece-type" }, { "id": "unique-id", "type": "piece-type" } ] }
示例响应
{ "status": 200, "data": [ { "id": "unique-id", "type": "piece-type", "data": { "key": "value", "key...": "value..." } }, { "id": "unique-id", "type": "piece-type", "data": { "key": "value", "key...": "value..." } } ] }
找不到的片段将被忽略。
如果发生验证错误,示例响应将是
{ "status": 400, "errors": { "field-name": "error-message", "field-name...": "error-message..." } }
保存片段
POST writeaway:pieces:save
通过其id
和type
保存特定片段。
示例请求
{ "id": "unique-id", "type": "piece-type", "data": { "key": "value", "key...": "value..." } }
如果没有找到片段,将创建一个新的。`id`是所有片段中的唯一值。
示例响应
{ "status": 200, "data": { "id": "unique-id", "type": "piece-type", "data": { "key": "value", "key...": "value..." } } }
如果发生验证错误,示例响应将是
{ "status": 400, "errors": { "field-name": "error-message", "field-name...": "error-message..." } }
组件
元数据
元数据是一种用于表示当前片段编辑器的结构。虽然此包对真实应用操作者一无所知,但提供了\Spiral\Writeaway\Service\Meta\ProviderInterface
接口 - 开发者可以将其绑定到更丰富的实现,这样元数据将包含真实用户的id、标签和时间。示例
{ "id": "some user id", "label": "some user label, such as name", "time": "current date time string" }