robotkudos/rk-image-api

用于处理图像上传并与rk-image-uploader React应用协同工作的API。

1.0.1 2021-04-25 15:34 UTC

This package is auto-updated.

Last update: 2024-09-25 23:19:09 UTC


README

RK Image API负责处理rk-image-uploader的后端。它接收来自rk-image-uploader的API请求并安全响应。

安装

composer require robotkudos/rk-image-api

用法

默认情况下,RKImageAPI通过auth:api中间件响应于/api/image-api。它将创建一个名为images的表,并在安装后立即就绪。您只需运行以下命令以创建images表

php artisan migrate

配置

如果您需要额外的安全性(通过添加更多中间件)或不同的API端点以及更改表名,可以使用以下命令发布供应商配置文件

php artisan vendor:publish --provider='RobotKudos/RKImageAPI/RKImageAPIServiceProvider'

这将把配置文件复制到config/rkimageapi.php。您可以在那里更改默认值。

APIs

POST /api/image-api

接收以下内容

- image (FormData Image)
- key (random stringto group images, e.g. by user, or listing, ...)
- name
- position (the position for sorting purpose)
- comment (optional)

响应示例

{
    err: false, 
    id: 123
}

GET /api/image/api

接收以下内容

- key

响应示例

[
    {
        id: 123,
        name: sample_name,
        image_url: /img/sample_name.jpg,
        image_2x_url: /img/sample_name_2x.jpg,
        thumb_url: /img/sample_name_thumb.jpg,
        thumb_2x_url: /img/sample_name_thumb_2x.jpg,
        position: 1,
        comments: ...
     }
]

DELETE /api/image-api

它删除所有具有该键的图像。

接收以下内容

- key

响应示例

{
    err: false
}

PUT /api/image-api/{id}

编辑图像的名称。

接收以下内容

- action: rename // currenty only support rename
- name: the new name

响应示例

{
    err: false,
    name: new name
}

PUT /api/image-api/reorder

交换两个图像的位置。

接收

- id1
- pos1
- id2
- pos2

响应示例

{
    err: false
}

DELETE /api/image-api/{id}

删除图像

接收无内容

响应示例

{
    err: false
}

深入了解

RKImageAPI需要接收一个来分组图像。对于每个接收到的图像,它创建四个图像。一个普通尺寸(默认为1500px,您可以通过配置文件进行更改),一个双倍大小的Retina版本,一个缩略图尺寸(默认为180px,可配置),以及一个双倍缩略图尺寸的Retina版本。

在底层,它使用RKImage包进行图像缩放和保存。