微信公众号为指定openid用户推送消息的三种方式

已为老胡 2022-08-30 AM 4678℃ 2条

  第一个接口:客服发送消息

  请求方式: POST

  请求地址:https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN

  params:access_token(获取方式见文尾)

  body:

  

{
  // openid
  "touser":"OPEN_ID",
  // 消息类型(可以有很多,这里展示文本类型)
  "msgtype":"text",
  // 内容
  "text":
  {
  "content":"Hello World"
  }
  }

  注意:这个接口必须用户点到公众号的应用内部才能发送成功,并且一个用户最多同时发送三条信息


  第二个接口:模板消息

  微信提供了模板消息功能,可自定义模板内容,然后进行使用,官方文档见:

  设置好模板消息后,拿到模板id,利用access_token鉴权就可以对指定openid的用户发送模板消息了。

  请求方式:POST

  请求地址:https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN

  params:access_token(获取方式见文尾)

  body

 

 {
  // openid
  "touser":"OPEN_ID",
  // 模板id
  "template_id":"ggsdfkfdsisfdisnf-_djfas-fjdsfnnjcsa",
  "url":"http://weixin.qq.com/download",
  "data":{
  "first": {
  "value":"预约游戏上线",
  "color":"#173177"
  },
  "keyword1":{
  "value":"进击的巨人",
  "color":"#173177"
  },
  "keyword2": {
  "value":"即将上线",
  "color":"#173177"
  },
  "keyword3": {
  "value":"2021年7月22日",
  "color":"#173177"
  },
  "remark":{
  "value":"快上号吧!",
  "color":"#173177"
  }
  }
  }

  参数说明:

  参数    是否必填    说明

  touser    是    接收者openid

  template_id    是    模板ID

  url    否    模板跳转链接(海外帐号没有跳转能力)

  miniprogram    否    跳小程序所需数据,不需跳小程序可不用传该数据

  appid    是    所需跳转到的小程序appid(该小程序appid必须与发模板消息的公众号是绑定关联关系,暂不支持小游戏)

  pagepath    否    所需跳转到小程序的具体页面路径,支持带参数,(示例index?foo=bar),要求该小程序已发布,暂不支持小游戏

  data    是    模板数据

  color    否    模板内容字体颜色,不填默认为黑色

  在调用模板消息接口后,会返回JSON数据包。正常时的返回JSON数据包示例:

  

{
  "errcode":0.
  "errmsg":"ok",
  "msgid":200228332
  }

  第三个接口:获取Access_Token接口

  接口调用请求说明

  https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

  参数说明

  参数    是否必须    说明

  grant_type    是    获取access_token填写client_credential

  appid    是    第三方用户唯一凭证

  secret    是    第三方用户唯一凭证密钥,即appsecret

  返回说明

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

  

{"access_token":"ACCESS_TOKEN","expires_in":7200}

  参数说明

  参数    说明

  access_token    获取到的凭证

  expires_in    凭证有效时间,单位:秒

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

  

{"errcode":40013."errmsg":"invalid appid"}

  返回码说明

  返回码    说明

  -1    系统繁忙,此时请开发者稍候再试

  0    请求成功

  40001    AppSecret错误或者AppSecret不属于这个公众号,请开发者确认AppSecret的正确性

  40002    请确保grant_type字段值为client_credential

  40164    调用接口的IP地址不在白名单中,请在接口IP白名单中进行设置。(小程序及小游戏调用不要求IP地址在白名单内。)

  89503    此IP调用需要管理员确认,请联系管理员

  89501    此IP正在等待管理员确认,请联系管理员

  89506    24小时内该IP被管理员拒绝调用两次,24小时内不可再使用该IP调用

  89507    1小时内该IP被管理员拒绝调用一次,1小时内不可再使用该IP调用


标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~



已有 2 条评论


  1. 1
    1

    11

    回复 2023-12-28 09:29
  2. 靓仔
    靓仔

    推送全部 touser 如何填写

    回复 2022-10-25 18:02