第三方平台可以通过微信公众平台素材管理接口实现同步了

  平时运营微信公众平台时有没发现素材管理有点不太好操作,特别是素材一多,找个东西都翻半天。现在好了,微信宣布公众平台新增素材管理接口,对所有认证公众号开放,方便快捷,可以实现同步互通。

  微信公众平台素材管理接口具体如下:

  1. 新增临时素材

    公众号经常有需要用到一些临时性的多媒体素材的场景,例如在使用接口特别是发送消息时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。素材管理接口对所有认证的订阅号和服务号开放。

    通过本接口,公众号可以新增临时素材(即上传临时多媒体文件)。但请注意,每个多媒体文件(media_id)会在开发者上传或粉丝发送到微信服务器3天后自动删除(所以用户发送给开发者的素材,若开发者需要,应尽快下载到本地),以节省服务器资源。请注意,media_id是可复用的。

    本接口即为原“上传多媒体文件”接口。

    接口调用请求说明

    http请求方式: POST/FORM,需使用https
    https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
    调用示例(使用curl命令,用FORM表单方式上传一个多媒体文件):
    curl -F [email protected] "https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE"
    

    参数说明

    参数 是否必须 说明
    access_token 调用接口凭证
    type 媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
    media form-data中媒体文件标识,有filename、filelength、content-type等信息

    返回说明

    正确情况下的返回JSON数据包结果如下:

    {"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789}
    
    参数 描述
    type 媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb,主要用于视频与音乐格式的缩略图)
    media_id 媒体文件上传后,获取时的唯一标识
    created_at 媒体文件上传时间戳

    错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

    {"errcode":40004,"errmsg":"invalid media type"}
    

    注意事项

    上传的临时多媒体文件有格式和大小限制,如下:

    • 图片(image): 1M,支持JPG格式
    • 语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式
    • 视频(video):10MB,支持MP4格式
    • 缩略图(thumb):64KB,支持JPG格式

    媒体文件在后台保存时间为3天,即3天后media_id失效。

  2. 获取临时素材

    公众号可以使用本接口获取临时素材(即下载临时的多媒体文件)。请注意,视频文件不支持https下载,调用该接口需http协议。

    本接口即为原“下载多媒体文件”接口。

    接口调用请求说明

    http请求方式: GET,https调用
    https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID
    请求示例(示例为通过curl命令获取多媒体文件)
    curl -I -G "https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID"
    

    参数说明

    参数 是否必须 说明
    access_token 调用接口凭证
    media_id 媒体文件ID

    返回说明

    正确情况下的返回HTTP头如下:

    HTTP/1.1 200 OK
    Connection: close
    Content-Type: image/jpeg
    Content-disposition: attachment; filename="MEDIA_ID.jpg"
    Date: Sun, 06 Jan 2013 10:20:18 GMT
    Cache-Control: no-cache, must-revalidate
    Content-Length: 339721
    curl -G "https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID"
    

    错误情况下的返回JSON数据包示例如下(示例为无效媒体ID错误)::

    {"errcode":40007,"errmsg":"invalid media_id"}
  3. 新增永久素材

    除了3天就会失效的临时素材外,开发者有时需要永久保存一些素材,届时就可以通过本接口新增永久素材。

    请注意:

    1、新增的永久素材也可以在公众平台官网素材管理模块中看到
    2、永久素材的数量是有上限的,请谨慎新增。图文消息素材和图片素材的上限为5000,其他类型为1000
    3、调用该接口需https协议
    

    新增永久图文素材

    接口调用请求说明

    http请求方式: POST
    https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=ACCESS_TOKEN
    

    调用示例

    {
      "articles": [{
           "title": TITLE,
           "thumb_media_id": THUMB_MEDIA_ID,
           "author": AUTHOR,
           "digest": DIGEST,
           "show_cover_pic": SHOW_COVER_PIC(0 / 1),
           "content": CONTENT,
           "content_source_url": CONTENT_SOURCE_URL
        },
        //若新增的是多图文素材,则此处应还有几段articles结构
     ]
    }
    

    参数说明

    参数 是否必须 说明
    title 标题
    thumb_media_id 图文消息的封面图片素材id(必须是永久mediaID)
    author 作者
    digest 图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
    show_cover_pic 是否显示封面,0为false,即不显示,1为true,即显示
    content 图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS
    content_source_url 图文消息的原文地址,即点击“阅读原文”后的URL

    返回说明

    {
       "media_id":MEDIA_ID
    }
    

    返回的即为新增的图文消息素材的media_id。

    新增其他类型永久素材

    接口调用请求说明

    通过POST表单来调用接口,表单id为media,包含需要上传的素材内容,有filename、filelength、content-type等信息。请注意:图片素材将进入公众平台官网素材管理模块中的默认分组。

    http请求方式: POST
    http://file.api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN
    调用示例(使用curl命令,用FORM表单方式新增一个其他类型的永久素材):
    curl -F [email protected] "http://file.api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN"
    

    参数说明

    参数 是否必须 说明
    access_token 调用接口凭证
    type 媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
    media form-data中媒体文件标识,有filename、filelength、content-type等信息

    新增永久视频素材需特别注意

    在上传视频素材时需要POST另一个表单,id为description,包含素材的描述信息,内容格式为JSON,格式如下:

    {
      "title":VIDEO_TITLE,
      "introduction":INTRODUCTION
    }
    

    新增永久视频素材的调用示例:

    curl "http://file.api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN" -F [email protected] -F  description=‘{"title":VIDEO_TITLE, "introduction":INTRODUCTION}‘
    

    参数说明

    参数 是否必须 说明
    title 视频素材的标题
    introduction 视频素材的描述

    返回说明

    {
      "media_id":MEDIA_ID
    }
    

    返回参数说明

    参数 描述
    media_id 新增的永久素材的media_id

    错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

    {"errcode":40007,"errmsg":"invalid media_id"}
  4. 获取永久素材

    在新增了永久素材后,开发者可以根据media_id来获取永久素材,需要时也可保存到本地。

    请注意:

    1、获取永久素材也可以获取公众号在公众平台官网素材管理模块中新建的图文消息、语音、视频等素材(但需要先通过获取素材列表来获知素材的media_id)
    2、临时素材无法通过本接口获取
    3、调用该接口需https协议
    

    接口调用请求说明

    http请求方式: POST,https调用
    https://api.weixin.qq.com/cgi-bin/material/get_material?access_token=ACCESS_TOKEN
    

    调用示例

    {
    "media_id":MEDIA_ID
    }
    

    参数说明

    参数 是否必须 说明
    access_token 调用接口凭证
    media_id 要获取的素材的media_id

    返回说明

    如果请求的素材为图文消息,则响应如下:

    {
     "news_item":
     [
         {
         "title":TITLE,
         "thumb_media_id"::THUMB_MEDIA_ID,
         "show_cover_pic":SHOW_COVER_PIC(0/1),
         "author":AUTHOR,
         "digest":DIGEST,
         "content":CONTENT,
         "content_source_url":CONTENT_SOURCE_URL
         },
         //多图文消息有多篇文章
      ]
    }
    

    其他类型的素材消息,则响应的直接为素材的内容,开发者可以自行保存为文件。例如:

    示例
    curl "https://api.weixin.qq.com/cgi-bin/material/get_material?access_token=ACCESS_TOKEN" -d ‘{"media_id":"61224425"}‘ > file
    

    返回参数说明

    参数 描述
    title 图文消息的标题
    thumb_media_id 图文消息的封面图片素材id(必须是永久mediaID)
    show_cover_pic 是否显示封面,0为false,即不显示,1为true,即显示
    author 作者
    digest 图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
    content 图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS
    content_source_url 图文消息的原文地址,即点击“阅读原文”后的URL

    错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

    {"errcode":40007,"errmsg":"invalid media_id"}
    
  5. 删除永久素材

    在新增了永久素材后,开发者可以根据本接口来删除不再需要的永久素材,节省空间。

    请注意:

    1、请谨慎操作本接口,因为它可以删除公众号在公众平台官网素材管理模块中新建的图文消息、语音、视频等素材(但需要先通过获取素材列表来获知素材的media_id)
    2、临时素材无法通过本接口删除
    3、调用该接口需https协议
    

    接口调用请求说明

    http请求方式: POST
    https://api.weixin.qq.com/cgi-bin/material/del_material?access_token=ACCESS_TOKEN
    

    调用示例

    {
    "media_id":MEDIA_ID
    }
    

    参数说明

    参数 是否必须 说明
    access_token 调用接口凭证
    media_id 要获取的素材的media_id

    返回说明

    {
        "errcode":ERRCODE,
        "errmsg":ERRMSG
    }
    

    正常情况下调用成功时,errcode将为0。

  6. 修改永久图文素材

    开发者可以通过本接口对永久图文素材进行修改。

    请注意:

    1、也可以在公众平台官网素材管理模块中保存的图文消息(永久图文素材)
    2、调用该接口需https协议
    

    接口调用请求说明

    http请求方式: POST
    https://api.weixin.qq.com/cgi-bin/material/update_news?access_token=ACCESS_TOKEN
    

    调用示例

    {
      "media_id":MEDIA_ID,
      "index":INDEX,
      "articles": [{
           "title": TITLE,
           "thumb_media_id": THUMB_MEDIA_ID,
           "author": AUTHOR,
           "digest": DIGEST,
           "show_cover_pic": SHOW_COVER_PIC(0 / 1),
           "content": CONTENT,
           "content_source_url": CONTENT_SOURCE_URL
        },
        //若新增的是多图文素材,则此处应还有几段articles结构
     ]
    }
    

    参数说明

    参数 是否必须 说明
    media_id 要修改的图文消息的id
    index 要更新的文章在图文消息中的位置(多图文消息时,此字段才有意义),第一篇为0
    title 标题
    thumb_media_id 图文消息的封面图片素材id(必须是永久mediaID)
    author 作者
    digest 图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
    show_cover_pic 是否显示封面,0为false,即不显示,1为true,即显示
    content 图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS
    content_source_url 图文消息的原文地址,即点击“阅读原文”后的URL

    返回说明

    {
      "errcode": ERRCODE,
      "errmsg": ERRMSG
    }
    

    正确时errcode的值应为0。

  7. 获取素材总数

    开发者可以根据本接口来获取永久素材的列表,需要时也可保存到本地。

    请注意:

    1.永久素材的总数,也会计算公众平台官网素材管理中的素材
    2.图片和图文消息素材(包括单图文和多图文)的总数上限为5000,其他素材的总数上限为1000
    3.调用该接口需https协议
    

    接口调用请求说明

    http请求方式: GET
    https://api.weixin.qq.com/cgi-bin/material/get_materialcount?access_token=ACCESS_TOKEN
    

    返回说明

    {
      "voice_count":COUNT,
      "video_count":COUNT,
      "image_count":COUNT,
      "news_count":COUNT
    }
    

    返回参数说明

    参数 描述
    voice_count 语音总数量
    video_count 视频总数量
    image_count 图片总数量
    news_count 图文总数量

    错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

    {"errcode":-1,"errmsg":"system error"}
  8. 获取素材列表

    在新增了永久素材后,开发者可以分类型获取永久素材的列表。(这里有 如何快速查找微信公众平台的历史图文消息素材 的小方法,是在公众平台上的,不是第三方网站的)

    请注意:

    1、获取永久素材的列表,也会包含公众号在公众平台官网素材管理模块中新建的图文消息、语音、视频等素材(但需要先通过获取素材列表来获知素材的media_id)
    2、临时素材无法通过本接口获取
    3、调用该接口需https协议
    

    接口调用请求说明

    http请求方式: POST
    https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=ACCESS_TOKEN
    

    调用示例

    {
        "type":TYPE,
        "offset":OFFSET,
        "count":COUNT
    }
    

    参数说明

    参数 是否必须 说明
    type 素材的类型,图片(image)、视频(video)、语音 (voice)、图文(news)
    offset 从全部素材的该偏移位置开始返回,0表示从第一个素材 返回
    count 返回素材的数量,取值在1到20之间

    返回说明

    永久图文消息素材列表的响应如下:

    {
       "total_count": TOTAL_COUNT,
       "item_count": ITEM_COUNT,
       "item": [{
           "media_id": MEDIA_ID,
           "content": {
               "news_item": [{
                   "title": TITLE,
                   "thumb_media_id": THUMB_MEDIA_ID,
                   "show_cover_pic": SHOW_COVER_PIC(0 / 1),
                   "author": AUTHOR,
                   "digest": DIGEST,
                   "content": CONTENT,
                   "content_source_url": CONTETN_SOURCE_URL
               },
               //多图文消息会在此处有多篇文章
               ]
            },
            "update_time": UPDATE_TIME
        },
        //可能有多个图文消息item结构
      ]
    }
    

    其他类型(图片、语音、视频)的返回如下:

    {
       "total_count": TOTAL_COUNT,
       "item_count": ITEM_COUNT,
       "item": [{
           "media_id": MEDIA_ID,
           "name": NAME,
           "update_time": UPDATE_TIME
       },
       //可能会有多个素材
       ]
    }
    

    返回参数说明

    参数 描述
    total_count 该类型的素材的总数
    item_count 本次调用获取的素材的数量
    title 图文消息的标题
    thumb_media_id 图文消息的封面图片素材id(必须是永久mediaID)
    show_cover_pic 是否显示封面,0为false,即不显示,1为true,即显示
    author 作者
    digest 图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
    content 图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS
    content_source_url 图文消息的原文地址,即点击“阅读原文”后的URL
    update_time 这篇图文消息素材的最后更新时间
    name 文件名称

    错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

    {"errcode":40007,"errmsg":"invalid media_id"}
    
时间: 2024-10-07 21:45:12

第三方平台可以通过微信公众平台素材管理接口实现同步了的相关文章

一、微信公众平台的接入微信公众平台的接入

一.微信公众平台的接入微信公众平台的接入 1.官方文档 2.设置公司或者个人服务器网站: 要接入微信,我们要建立个人网站去接收微信数据,并返回相应格式的数据,我们需要建立一个能够让外网访问的网站,并按照官方文档要求建立一个一般处理程序用来接收微信发送的数据(signature,timestamp,nonce,echostr),在服务器上验证之后,返回微信要求的数据(echostr),一般处理程序代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

微信公众号素材管理

1.微信公众号素材管理中图片库的内容是否能够删除. 回答:等大家发送完消息后,图片是可以删除的.不用担心发送出去后用户看不到图片.但在没有发送消息前是不能删除的. 2.微信公众号素材管理中图文列表能否在发送完消息后删除. 回答:大家发送完消息后,图文列表是可以删除的.当消息发送后,用户看到的是前台中的内容,而后台的图文列表删除后对用户是没有影响的.但同时也意味着发送出去的消息是不能修改的. 上海地铁周边服务:

第三方网站不能调用微信公众平台里的图片了 显示"此图片来自微信公众号平台未经允许不可引用"

下午ytkah在自己小博客搜索时看到有几篇文章图片显示不了,再访问一些网站时发现有些图片无法显示出来,显示"此图片来自微信公众号平台未经允许不可引用",如下图所示,这个应该是最近微信团队对有原创保护能力的公众帐号又一举措. 是不是有点似曾相识?没错,第三方网站调用QQ空间里面的图片也是不能完整显示,提示“此图片来自QQ空间,未经允许不可引用”. 其实,腾讯这些措施应该也是无赖之举,微信公众平台已有近800万公众号入驻了,很多公众号的单篇图文消息都超过了10+阅读量,可以想象整个公众平台

(转)10款微信公众平台相关的开源软件

1.微信公共帐号机器人 WeBot WeBot ( Weixin Robot) 的设计目标就是让你傻瓜化的接入微信公众平台.是 微信公众平台提供的开放信息接口的自动回复系统,基于node.js 实现. 功能: 清晰独立的 router ,轻松实现文本匹配流程控制 基于正则表达式的对话设定,配置简单,可以给一句话随机回复不同内容 支持等待后续操作模式,如可以提示用户"需要我执行xxx操作吗?" 授权协议: 未知开发语言: JavaScript 源码地址:https://github.co

微信公众平台开发问答 【转发】

微信公众平台开发问答 微信公众平台开发问答是一个微信知识问答区,专注于提供微信应用及开发技术知识的整理.归类和检索. 主题:新手常见问题 问:我是新手,没有开发基础,应该如何学习微信公众平台的开发?答:先学习PHP和Mysql,可以在网上找相应的教程,也可参考书籍<PHP和MySQL Web开发(原书第4版)>:再学习微信公众平台开发入门教程,了解微信收发消息原理及回复:然后根据微信开发文档,熟悉接口,并在此基础上实现一些基本的小功能,并扩展到更复杂的功能上. 问:URL和Token是什么意思

网络架构、云平台和微信公众平台开发接入

版权声明:本文为博主原创文章,未经博主允许不得转载. 云与后端相关的技术似乎并不属于嵌入式和物联智能硬件开发工程师的范畴,但是嵌入式开发工程师有必要认识成熟的网络架构和相关的云技术,以拓展自己在系统架构方面的视野.大数据分析是物联网背后的核心价值,物联智能硬件是物联大系统的终端,开发工程师不仅要深入精通物联技术,也应该去理解大系统,甚至整个生态领域的相关技术. 作为嵌入式开发工程师,也许并不需要熟悉云和后端的技术开发,但至少要对其中用到的技术和接口有一定的认识. 一.网络架构 常见的网络架构分为

微信公众平台教程,注册申请、认证、开发、推广营销,教你怎么用微信公众号

微信公众平台教程 微信公众平台上至少有580多万公众号,8亿的微信用户参与其中,如此聚宝盆如何挖掘呢?本微信公众平台教程,以ytkah自己的使用体会教你怎么用微信公众号,包括微信公众平台注册申请.认证.开发.推广营销.成功案例,公众平台消息导出,关注用户备份,图文消息排版美化,图片尺寸,微信菜单设置,使用技巧等 教程目录 微信公众平台分类 微信公众平台注册,微信公众平台申请 微信公众平台登录 微信公众平台认证 微信公众平台开发 微信公众平台推广,微信公众平台营销 微信公众平台分类 服务号 给企业

[一车大师]微信公众平台开发入门

由于微信的大热,为了更好的方便使用微信的用户查询一些信息,这篇文章是入门级的微信公众平台开发教程,需要的朋友可以参考下. 在这篇入门教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯及XML语言基础.如果你还没有,那么请先学习相关知识. 我们将使用微信公众账号一车大师(账号:yichemaster,关注微信公众号运营和开发的可以搜索公众号yichemaster,或扫描下方二维码关注一车大师)作为讲解的例子. 这篇入门教程将引导你完成如下任务: 创建百度云平台应用启用微信公

微信公众平台开发入门教程

在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯.及HTTP/XML/CSS/JS等基础. 我们将使用微信公众账号方倍工作室作为讲解的例子,二维码见底部. 本系列教程将引导你完成如下任务: 创建新浪云计算平台应用 启用微信公众平台开发模式 基础接口消息及事件 微信公众平台PHP SDK 微信公众平台开发模式原理 开发天气预报功能 第一章 申请服务器资源 创建新浪云计算应用 申请账号 我们使用SAE新浪云计算平台作为服务器资源,并且申请PHP环境+M