微信公众号为指定openid用户推送消息
微信公眾號為指定openid用戶推送消息
微信提供的開放接口中,有兩個給指定openid的用戶發送信息的接口,適用場景應該是向 預約用戶或者中獎用戶發送消息。
第一個接口:客服發送消息
-
請求方式: 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調用 |
總結
以上是生活随笔為你收集整理的微信公众号为指定openid用户推送消息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在kotlin companion ob
- 下一篇: Docker容器的备份与恢复,Docke