# 上传图片

# 接口说明

可通过该接口上传图片

# 注意事项

  • resp_type=1时将会返回形如mmecimage.cn/p/{appid}/{imgKey}的图片链接,该链接永久有效,同一张图片,无需重复调用该接口重复上传;
  • 接口返回的图片链接有访问频率限制,超出访问频率后,会返回404状态码,请勿将该图片链接用于用户端(访问量较大)展示;
  • 当前访问频率限制规则:
    1. appid维度:10000/min
    2. imgKey维度:100/min
  • 接口返回的图片链接,支持进行图片处理(缩放/裁剪/压缩/水印等),具体使用方法参考图片处理,该文档内的download_url即为当前接口返回的图片链接;
  • 图片格式目前只支持bmp, jpg(jpeg), png, svg, webp,若使用upload_type=1的方式上传图片,平台侧会根据访问img_url后返回的content-type对文件格式进行判断,且不支持301/302跳转;
  • 图片上传大小限制:
    1. resp_type=0为2MB
    2. resp_type=1为10MB

# 平台支持的图片格式与content-type关系说明

图片格式 content-type
.bmp image/bmp
.bmp application/x-bmp
.jpg image/jpeg
.jpg image/jpg
.jpeg image/jpeg
.jpeg image/jpg
.png image/png
.png application/x-png
.svg text/xml
.webp image/webp

# 接口调用请求说明

POST https://api.weixin.qq.com/channels/ec/basics/img/upload?access_token=ACCESS_TOKEN

# 请求参数说明

参数 类型 是否必填 描述
upload_type number 上传类型。0:二进制流;1:图片url(不支持301/302跳转),该参数为 URL 参数
resp_type number 返回数据类型。0:media_id和pay_media_id;1:图片链接(商品信息相关图片请务必使用此参数得到链接),该参数为 URL 参数
height number upload_type=0时必填,图片的高,单位:像素,该参数为 URL 参数
width number upload_type=0时必填,图片的宽,单位:像素,该参数为 URL 参数
img_url string upload_type=1时必填,图片url,该参数为 POST包请求参数

# 请求参数示例

示例1

curl -F media=@test.jpg 
"https://api.weixin.qq.com/channels/ec/basics/img/upload?access_token=ACCESS_TOKEN&upload_type=0&resp_type=0&height=108&width=108"

示例2

curl -d "{\"img_url\":\"https://xxx.com/yyy\"}" "http://api.weixin.qq.com/channels/ec/basics/img/upload?access_token=ACCESS_TOKEN&upload_type=1&resp_type=1"

# 返回参数说明

参数 类型 描述
errcode number 错误码
errmsg string 错误信息
pic_file.media_id number media_id
pic_file.pay_media_id string 支付media_id
img_url string 图片url

# 返回参数示例

示例1

{
    "errcode": 0,
    "errmsg": "ok",
    "pic_file": {
        "media_id": "THE_MEDIA_ID",
        "pay_media_id": "THE_PAY_MEDIA_ID"
    }
}

示例2

{
    "errcode": 0,
    "pic_file": {
        "img_url": "xxxxx"
    }
}

# 错误码

错误码 错误描述
公共错误码 -
10020055 参数有误
10020056 图片格式不合法, 只支持bmp, jpg(jpeg), png, svg, webp
10020057 获取原图超过2s, 未返回结果超时
10020058 上传图片失败,请重试
10020059 图片为空
10020060 图片大小超出限制
10020061 图片URL非法,如:传入mmecimage.cn/p/前缀的图片
10020193 不支持拉取原图301/302跳转
10020253 原图url打开返回404
10020254 原图url带了//,无法支持该格式url