API接口文档

为开发者提供完整的PNG转ICO转换接口

接口概览
PNG转ICO API提供简单易用的图片转换服务,支持多种输入格式和输出尺寸。
支持PNG、JPG、WEBP等多种格式
批量转换处理
多种ICO尺寸输出
保持透明背景
高质量转换算法
RESTful API设计
身份验证

未来可能会添加API密钥验证机制。

接口端点
POST/api/converter

将上传的图片转换为ICO格式

请求参数

filesFile[]Required

要转换的图片文件(支持PNG、JPG、WEBP)

sizesnumber[]Optional

输出ICO尺寸数组,默认为[16, 32, 48]

[16, 32, 48, 64, 128, 256]

响应格式

{
  "success": true,
  "data": {
    "files": [
      {
        "originalName": "image.png",
        "icoUrl": "/api/download/abc123.ico",
        "sizes": [
          16,
          32,
          48
        ]
      }
    ],
    "zipUrl": "/api/download/batch_abc123.zip"
  }
}
使用示例
// POST request - Convert image
fetch('/api/convert-to-ico', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    imageUrl: 'https://example.com/image.png',
    sizes: [16, 32, 48]
  })
})
.then(response => response.json())
.then(data => {
  if (data.success) {
    console.log('Conversion successful:', data.data);
    // data.data.results contains base64 data for each size
    Object.entries(data.data.results).forEach(([size, base64]) => {
      const blob = new Blob([atob(base64)], { type: 'image/x-icon' });
      const url = URL.createObjectURL(blob);
      const a = document.createElement('a');
      a.href = url;
      a.download = `icon_${size}px.ico`;
      a.click();
    });
  }
});

// GET request - Get API information
fetch('/api/convert-to-ico', {
  method: 'GET'
})
.then(response => response.json())
.then(data => {
  console.log('API info:', data);
});
在线API测试
直接在浏览器中测试API接口,查看实际的请求和响应结果

支持PNG、JPG、WEBP、GIF格式的图片链接

支持的尺寸范围:16-256像素

错误代码
400请求参数错误

缺少必要参数或参数格式不正确

413文件过大

上传的文件超过最大限制(10MB)

415不支持的文件格式

仅支持PNG、JPG、WEBP格式

500服务器内部错误

转换过程中发生错误

使用限制
单个文件最大10MB
单次最多上传10个文件
支持的ICO尺寸:16×16 到 256×256
支持的输入格式:PNG、JPG、WEBP
技术支持
如果您在使用API过程中遇到问题,请通过以下方式联系我们: