使用微信临时素材库上传与获取图片
在开发微信小程序的客服,发送客服消息时,由于使用到了图片,于是用到了微信的临时素材库
上传图片
调用以下接口:
POST https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
access_token | string | 是 | 接口调用凭证 | |
type | string | 是 | 文件类型 | |
media | FormData | 是 | form-data 中媒体文件标识,有filename、filelength、content-type等信息 |
type 的合法值
值 | 说明 | 最低版本 |
---|---|---|
image | 图片 |
返回值
Object
返回的 JSON 数据包
属性 | 类型 | 说明 |
---|---|---|
errcode | number | 错误码 |
errmsg | string | 错误信息 |
type | string | 文件类型 |
media_id | string | 媒体文件上传后,获取标识,3天内有效。 |
created_at | number | 媒体文件上传时间戳 |
上传后当发送消息类型为图片消息类型时可以使用 media_id
使用微信的send接口发送客服消息给用户
发送时数据格式:
{
"touser": "OPENID",
"msgtype": "image",
"image": {
"media_id": "MEDIA_ID"
}
}
获取图片
调用以下接口
GET https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID
请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
access_token | string | 是 | 接口调用凭证 | |
media_id | string | 是 | 媒体文件 |
返回值
Buffer
返回的图片 Buffer
通过这个接口,我们可以先将本地图片通过上面的 upload接口 上传至微信的临时素材库,然后通过这个 get接口 与上传后返回的 media_id,去获取临时素材库中的图片,可以与发送图文消息时使用。
使用微信的send接口发送客服消息给用户
发送时数据格式:
{
"touser": "OPENID",
"msgtype": "link",
"link": {
"title": "Happy Day",
"description": "Is Really A Happy Day",
"url": "URL",
"thumb_url": "THUMB_URL"
}
}
其中:thumb_url 就是 https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID