pensiero / image-uploader
图片上传和缩放工具
v0.1.0
2017-02-14 16:41 UTC
Requires
- php: >=7.0
- ext-imagick: *
- league/flysystem-aws-s3-v3: ^1.0
This package is not auto-updated.
Last update: 2024-09-14 20:04:14 UTC
README
基于API的服务,允许保存、缩放和读取图片
特性
- 在文件系统中保存
- 在AWS中保存
- 添加验证器的可能性
- 添加过滤器的可能性
- PHP7严格模式
- 与公共Postman集合链接
- 单元测试
- 在Packagist(composer)上提交
- 在某处托管演示
- 通过API保护认证令牌
配置
允许的环境变量
SAVE_HANDLER
: (filesystem|aws) 其中您将保存图片AWS_ACCESS_KEY_ID
:AWS_SECRET_ACCESS_KEY
:AWS_REGION
:AWS_BUCKET
:OPTIMIZE
: (0|1) 去除EXIF数据以减小图片大小MAX_DIMENSIONS
: (例如:4096x4096) 允许的最大尺寸MAX_SIZE
: (例如:10240) 允许的最大大小(kb)ALLOWED_DIMENSIONS
: (例如:1400x460;1280x460;800x600) 请求之前上传的图片缩放版本时允许的尺寸
通过API使用
为了接收JSON响应,您应该添加以下头信息
Content-Type: application/json
Accept: application/json; charset=utf-8
我们假设您已将此应用程序上传到 theappleisonthetable.com
GET https://theappleisonthetable.com/
返回先前上传的图片信息
参数
id
: (可选: 整数) 之前上传的图片ID
示例GET数据:{}
示例响应
{
"ping": "pong"
}
示例GET数据:{"id": "5897209a9325f7-78554697"}
示例响应
{
"status_code": 200,
"id": "5897209a9325f7-78554697",
"url": "http://image-uploader.dev/i/5897209a9325f7-78554697_0_0.jpg",
"url_dynamic": "http://image-uploader.dev/i/5897209a9325f7-78554697_#WIDTH#_#HEIGHT#.jpg",
"width": null,
"height": null
}
POST https://theappleisonthetable.com/
上传图片
参数
source
: (必需: url|base64字符串|上传的文件) 您可以发送远程url,一个图像base64编码(JSON中无换行符)或上传一个文件(参见public/upload.php中的示例)width
: (可选: 整数) 如果指定,原始图片将在上传之前缩放到指定的宽度height
: (可选: 整数) 如果指定,原始图片将在上传之前缩放到指定的高度
注意:如果您只指定了
width
或height
参数,图片将按比例缩放
示例POST数据:{"source": "...非常长的base64字符串..."}
示例响应
{
"status_code": 200,
"id": "5898c96c4a2d62-52410036",
"url": "http://image-uploader.dev/i/5898c96c4a2d62-52410036_0_0.jpg",
"url_dynamic": "http://image-uploader.dev/i/5898c96c4a2d62-52410036_#WIDTH#_#HEIGHT#.jpg",
"width": null,
"height": null
}
演示
托管中...
示例
如果您想直接在您的应用程序中使用Image对象(而不是作为一个独立的API服务),您可以在public/examples目录中找到一些示例。