spiral/writeaway

Writeaway编辑器的PHP API服务器

v0.4.0 2022-03-14 05:46 UTC

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端点

列出图像

GETPOST 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"
    }
  ]
}

有关可能的图像字段,请参阅上一个端点。

删除图像

POSTDELETE writeaway:images:delete 删除特定图像。

示例请求

{
  "id": "unique-id"
}

示例响应

{
  "status": 200
}

获取片段

GETPOST writeaway:pieces:get 通过其idtype获取特定片段。

示例请求

{
  "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..."
  }
}

批量获取片段

GETPOST writeaway:pieces:bulk 通过其idtype获取特定片段。

示例请求

{
  "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 通过其idtype保存特定片段。

示例请求

{
  "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"
}