admin 管理员组

文章数量: 1184232


2024年2月5日发(作者:mac怎么打开php文件)

微信公众平台开发者文档

1 新手接入....................................................................................................................................... 1

1,1 接入指南 ............................................................................................................................ 1

1.2 开发者规范 ........................................................................................................................ 2

2 基础支持....................................................................................................................................... 3

2.1 获取access_token .............................................................................................................. 3

2.2 全局返回码说明 ................................................................................................................ 4

2.3 接口频率限制说明 ........................................................................................................... 7

2.4 上传下载多媒体文件 ....................................................................................................... 9

1 新手接入

1,1 接入指南

第一步:申请消息接口

在公众平台网站的高级功能 – 开发模式页,点击“成为开发者”按钮,填写URL和Token,其中URL是开发者用来接收微信服务器数据的接口URL。Token可由开发者任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。

第二步:验证URL有效性

开发者提交信息后,微信服务器将发送GET请求到填写的URL上,GET请求携带四个参数:

开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。

检验signature的PHP示例代码:

第三步:成为开发者

验证URL有效性成功后即接入生效,成为开发者。如果公众号类型为服务号(订阅号只能使用普通消息接口),可以在公众平台网站中申请认证,认证成功的服务号将获得众多接口权限,以满足开发者需求。

此后用户每次向公众号发送消息、或者产生自定义菜单点击事件时,响应URL将得到推送。

公众号调用各接口时,一般会获得正确的结果,具体结果可见对应接口的说明。返回错误时,可根据返回码来查询错误原因。全局返回码说明

用户向公众号发送消息时,公众号方收到的消息发送者是一个OpenID,是使用用户微信号加密后的结果,每个用户对每个公众号有一个唯一的OpenID。

此外请注意,微信公众号接口只支持80接口。

1.2 开发者规范

开发者进行公众号开发时,除了需要满足每个接口的规范限制、调用频率限制外,还需特别注意模版消息、用户数据等敏感信息的使用规范。

涉及用户数据时:

您的服务需要收集用户任何数据的,必须事先获得用户的明确同意,且仅应当收集为运营及功能实现目的而必要的用户数据, 同时应当告知用户相关数据收集的目的、范围及使用方式等,保障用户知情权。

您收集用户的数据后,必须采取必要的保护措施,防止用户数据被盗、泄漏等。

您在特定微信公众号中收集的用户数据仅可以在该特定微信公众号中使用,不得将其使用在该特定微信公众号之外或为其他任何目的进行使用,也不得以任何方式将其提供给他人。

如果腾讯认为您收集、使用用户数据的方式,可能损害用户体验,腾讯有权要求您删除相关数据并不得再以该方式收集、使用用户数据。

一旦您停止使用本服务,或腾讯基于任何原因终止您使用本服务,您必须立即删除全部因使用本服务而获得的数据(包括各种备份), 且不得再以任何方式进行使用。

其他规范:

请勿为任何用户自动登录到微信公众平台提供代理身份验证凭据。

请勿提供跟踪功能,包括但不限于识别其他用户在个人主页上查看、点击等操作行为。

请勿自动将浏览器窗口定向到其他网页。

请勿设置或发布任何违反相关法规、公序良俗、社会公德等的玩法、内容等。

请勿公开表达或暗示,您与腾讯之间存在合作关系,包括但不限于相互持股、商业往来或合作关系等,或声称腾讯对您的认可。

完整的开发者规范和接口限制,请详见开发者接口文档,以及腾讯微信公众平台开发者协议。

2 基础支持

2.1 获取access_token

access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。正常情况下access_token有效期为7200秒,重复获取将导致上次获取的access_token失效。由于获取access_token的api调用次数非常有限,建议开发者全局存储与更新access_token,频繁刷新access_token会导致api调用受限,影响自身业务。

请开发者注意,由于技术升级,公众平台的开发接口的access_token长度将增长,其存储至少要保留512个字符空间。此修改将在1个月后生效,请开发者尽快修改兼容。

公众号可以使用AppID和AppSecret调用本接口来获取access_token。AppID和AppSecret可在开发模式中获得(需要已经成为开发者,且帐号没有异常状态)。注意调用所有微信接口时均需使用https协议。

接口调用请求说明:

http请求方式:GET

/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

参数说明

返回说明

正常情况下,微信会返回下述JSON数据包给公众号

错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):

2.2 全局返回码说明

公众号每次调用接口时,可能获得正确或错误的返回码,开发者可以根据返回码信息调试接口,排查错误。

全局返回码说明如下:

返回码

-1

0

40001

40002

40003

40004

系统繁忙

请求成功

获取access_token时AppSecret错误,或者access_token无效

不合法的凭证类型

不合法的OpenID

不合法的媒体文件类型

说明

40005

40006

40007

40008

40009

40010

40011

40012

40013

40014

40015

40016

40017

40018

40019

40020

40021

40022

40023

40024

40025

40026

40027

40028

40029

40030

40031

40032

40033

40035

不合法的文件类型

不合法的文件大小

不合法的媒体文件id

不合法的消息类型

不合法的图片文件大小

不合法的语音文件大小

不合法的视频文件大小

不合法的缩略图文件大小

不合法的APPID

不合法的access_token

不合法的菜单类型

不合法的按钮个数

不合法的按钮个数

不合法的按钮名字长度

不合法的按钮KEY长度

不合法的按钮URL长度

不合法的菜单版本号

不合法的子菜单级数

不合法的子菜单按钮个数

不合法的子菜单按钮类型

不合法的子菜单按钮名字长度

不合法的子菜单按钮KEY长度

不合法的子菜单按钮URL长度

不合法的自定义菜单使用用户

不合法的oauth_code

不合法的refresh_token

不合法的openid列表

不合法的openid列表长度

不合法的请求字符,不能包含uxxxx格式的字符

不合法的参数

40038

40039

40050

40051

41001

41002

41003

41004

41005

41006

41007

41008

41009

42001

42002

42003

43001

43002

43003

43004

43005

44001

44002

44003

44004

45001

45002

45003

45004

45005

不合法的请求格式

不合法的URL长度

不合法的分组id

分组名字不合法

缺少access_token参数

缺少appid参数

缺少refresh_token参数

缺少secret参数

缺少多媒体文件数据

缺少media_id参数

缺少子菜单数据

缺少oauth code

缺少openid

access_token超时

refresh_token超时

oauth_code超时

需要GET请求

需要POST请求

需要HTTPS请求

需要接收者关注

需要好友关系

多媒体文件为空

POST的数据包为空

图文消息内容为空

文本消息内容为空

多媒体文件大小超过限制

消息内容超过限制

标题字段超过限制

描述字段超过限制

链接字段超过限制

45006

45007

45008

45009

45010

45015

45016

45017

45018

46001

46002

46003

46004

47001

48001

50001

图片链接字段超过限制

语音播放时间超过限制

图文消息超过限制

接口调用超过限制

创建菜单个数超过限制

回复时间超过限制

系统分组,不允许修改

分组名字过长

分组数量超过上限

不存在媒体数据

不存在的菜单版本

不存在的菜单数据

不存在的用户

解析JSON/XML内容错误

api功能未授权

用户未授权该api

2.3 接口频率限制说明

公众号调用接口并不是无限制的。为了防止公众号的程序错误而引发微信服务器负载异常,默认情况下,每个公众号调用接口都不能超过一定限制,当超过一定限制时,调用对应接口会收到如下错误返回码:

各接口调用频率限制如下:

接口

获取access_token

自定义菜单创建

自定义菜单查询

自定义菜单删除

2000

1000

10000

1000

每日限额

创建分组

获取分组

修改分组名

移动用户分组

上传多媒体文件

下载多媒体文件

发送客服消息

高级群发接口

上传图文消息接口

删除图文消息接口

获取带参数的二维码

获取关注者列表

获取用户基本信息

获取网页授权access_token

刷新网页授权access_token

网页授权获取用户信息

1000

1000

1000

100000

5000

10000

500000

100

10

10

100000

500

5000000

请注意,在测试号申请页中申请的测试号,接口调用频率限制如下:

接口

获取access_token

自定义菜单创建

自定义菜单查询

自定义菜单删除

创建分组

获取分组

修改分组名

移动用户分组

上传多媒体文件

下载多媒体文件

发送客服消息

200

100

1000

100

100

100

100

1000

500

1000

50000

每日限额

获取带参数的二维码

获取关注者列表

获取用户基本信息

获取网页授权access_token

刷新网页授权access_token

网页授权获取用户信息

2.4 上传下载多媒体文件

10000

100

500000

公众号在使用接口时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。通过本接口,公众号可以上传或下载多媒体文件。但请注意,每个多媒体文件(media_id)会在上传、用户发送到微信服务器3天后自动删除,以节省服务器资源。

上传多媒体文件

公众号可调用本接口来上传图片、语音、视频等文件到微信服务器,上传后服务器会返回对应的media_id,公众号此后可根据该media_id来获取多媒体。请注意,media_id是可复用的,调用该接口需http协议。


本文标签: 接口 用户 公众 开发者 合法