国产欧美另类,亚洲精品乱码,免费在线观看视频一区,日本午夜精品视频在线观看

咨詢電話:
15628812133
29
2023/06

微信推送模板消息:使用場景與在 Django 中實現注意事項

發布時間:2023-06-29 09:46:31
發布者:已經寫了
瀏覽量:
0

在使用Django開發web應用的時候,很多場景都會有需要微信相關功能的介入,最近我們公司在使用python的Django框架配合國產數據庫OceanBase數據庫進行開發互聯網應急指揮系統的時候,就用到了微信通知,在發生輿情事件的時候通過微信公眾號,通知對應人員有新的事件發生,或者提醒相關人員對應事件的進度情況

想要使用微信的信息推送,就需要提前做好一些準備,因為發送微信模板消息,您需要使用微信公眾平臺 API。

  1. 需要有一個微信公眾號,并且已經獲得了開發者權限。

  2. 獲取到用戶的openid,如何獲取openid點擊查看方法

  3. 需要獲取微信公眾平臺的 API 密鑰,并且配置好相應的回調 URL。

  4. 需要根據微信公眾平臺的要求,選擇合適的模板,并填寫好模板內容。

  5. 根據微信公眾平臺的 API 文檔,構造合適的請求參數,發送請求。

  6. 對于推送消息的響應結果,需要進行適當的處理和解析,以便于判斷推送消息是否成功。

    廢話直接不多說,直接貼代碼

import copy
import json
import redis
import requests
from django.conf import settings
from api.models import DvadminSystemUsers
class WeChat:
    def __init__(self, app_id=settings.WX_APP_ID, secret=settings.WX_APP_SECRET, template=None):
        self.app_id = app_id
        self.secret = secret
        self.template = {
            "touser": "",
            "template_id": "",
            "url": "",
            "data": {
                "first": {
                    "value": "",
                },
                "keyword1": {
                    "value": "",
                },
                "keyword2": {
                    "value": "",
                },
                "remark": {
                    "value": "",
                },
            }
        }
        if template:
            self.template = template
        self.access_token = None
        self.req_list = list()
        self.user_list = list()
        self.data_list = list()
    def _get_token(self, force_update=False):
        key_name = 'wechat_token_{}'.format(self.app_id)
        if force_update:
            self.access_token = None
        else:
            self.access_token = get_data(key_name)
        if not self.access_token:
            url = "https://api.weixin.qq.com/cgi-bin/token?"
            payload = {
                'grant_type': 'client_credential',
                'appid': self.app_id,
                'secret': self.secret,
            }
            response = requests.get(url, params=payload, timeout=50)
            access_token = response.json().get("access_token")
            if access_token:
                set_data(key_name, access_token, ex=7100)
                self.access_token = get_data(key_name)
    def make_data_list(self):
        user_openid_list = DvadminSystemUsers.objects.filter(
            id__in=self.user_list
        ).exclude(
            openId=''
        ).exclude(
            openId__isnull=True
        ).values_list('openid', flat=True)
        for openid in user_openid_list:
            user_template = copy.deepcopy(self.template)
            user_template['touser'] = openid
            self.data_list.append(user_template)
    def post_data(self):
        # 獲取 token
        self._get_token()
        url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token={}".format(self.access_token)
        # 準備數據
        if self.user_list:
            self.make_data_list()
        # 發送請求
        for data in self.data_list:
            json_template = json.dumps(data)
            res = requests.post(url, data=json_template)
            print('post_data', res.text)
def get_redis():
    """
    連接redis
    """
    redis =  redis.Redis(host='localhost', port=6379, db=0)
    return redis
def set_data(name, value, **kwargs):
    # 將數據存入redis緩存
    redis = get_redis()
    value = json.dumps(value)
    redis.set(name, value, **kwargs)
def get_data(name):
    # 取出數據
    redis = get_redis()
    value = redis.get(name)
    if value:
        value = json.loads(value)
    return value

          調用微信推送類

微信推送模板消息:使用場景與在 Django 中實現注意事項

關鍵詞:
返回列表
国产欧美另类,亚洲精品乱码,免费在线观看视频一区,日本午夜精品视频在线观看
精品视频在线观看网站| 美女日韩在线中文字幕| 日本中文字幕视频一区| 亚洲一卡久久| 亚洲日本欧美| 综合精品一区| 日韩在线网址| 欧美91在线|欧美| 成人台湾亚洲精品一区二区| 日韩精品91| 不卡中文一二三区| 日韩精品一区第一页| 日韩一区中文| 国产精品日本| 精品一区三区| 日本不卡高清| 欧美国产美女| 国产精品中文| 久久精品影视| 日韩欧美三区| 日本精品在线播放| 亚洲伊人精品酒店| 欧美精品中文字幕亚洲专区| 久久激情网站| 国产精品成人自拍| 国内精品福利| 一级成人国产| 国产一区二区三区四区二区| 蜜桃一区二区三区在线| 蜜桃国内精品久久久久软件9| 久久亚洲二区| 欧美精品第一区| 99国产精品免费视频观看| 日韩一级欧洲| 国产精品igao视频网网址不卡日韩| 日韩免费一区| 欧美日韩国产在线观看网站| 青草国产精品| 五月激情久久| 日本v片在线高清不卡在线观看| 久久久久伊人| 中文一区二区| 国产一区调教| 午夜在线精品| 成人国产精品久久| 蜜臀a∨国产成人精品| 国产成人精品亚洲线观看| 亚洲永久字幕| 成人国产精品一区二区免费麻豆| 99re国产精品| 国产中文欧美日韩在线| 亚洲夜间福利| 国产日韩欧美一区二区三区在线观看 | 蜜桃av一区二区三区电影| 国产日韩欧美三区| 精精国产xxxx视频在线播放| 日本亚州欧洲精品不卡| 在线一区视频观看| 国产日本精品| 日韩视频久久| 日产精品一区二区| 视频一区中文字幕国产| 国产一区二区精品福利地址| 亚洲精品极品| 99国产精品免费视频观看| 国产精品午夜av| 亚洲一区二区毛片| 欧美激情视频一区二区三区免费| 在线视频日韩| 亚洲免费观看| 久久久久久久久丰满| 精品国产精品久久一区免费式| 国产成年精品| 日韩毛片视频| 韩国三级一区| 91精品一区国产高清在线gif | 在线视频观看日韩| 国产欧美日本| 波多野结衣一区| 丝袜美腿一区二区三区| 激情综合网址| 日韩国产在线不卡视频| 午夜久久免费观看| 国产一区二区三区黄网站 | 首页国产精品| 91精品尤物| 国产精品丝袜xxxxxxx| 日韩久久电影| 国产精品久久久久毛片大屁完整版| 久久亚洲美女| 欧美 日韩 国产一区二区在线视频 | 国产成人精品一区二区三区在线| 日本午夜精品视频在线观看| 亚洲中午字幕| 亚洲激情久久| 久久精品动漫| 国产va在线视频| 精品国产亚洲日本| 免费在线日韩av| 国产精品黄色片| 四虎在线精品| 综合亚洲视频| 首页亚洲欧美制服丝腿| 亚洲欧美日韩国产一区二区| 欧美精品自拍| 欧美日韩第一| 亚洲国产日韩欧美在线| 久久久久91| 99精品电影| 九九久久国产| 日韩高清国产一区在线| 在线亚洲精品| 麻豆中文一区二区| 黑丝一区二区三区| 久久国产中文字幕| 欧美91在线| 亚洲综合福利| 成人精品久久| 日韩影片在线观看| 精品一级视频| 亚洲欧美日韩国产一区二区| 成人免费网站www网站高清| 精品久久国产一区| 久久中文字幕导航| 国产精品嫩模av在线| 亚洲黄色影院| 亚洲性图久久| 久久婷婷亚洲| 国产日韩电影| 国内一区二区三区| 亚洲免费影视| 中国女人久久久| 久久午夜精品| 亚洲欧美在线专区| 青青草91视频| 美腿丝袜在线亚洲一区| 麻豆一区二区三| 97精品国产| 久久国产电影| 激情婷婷久久| 蜜臀av亚洲一区中文字幕| 亚洲精品四区| 国产亚洲字幕| 老司机免费视频一区二区三区| 成人免费一区| 中文字幕系列一区| aⅴ色国产欧美| 视频在线观看国产精品| 日韩区欧美区| 日本h片久久| 丝袜美腿亚洲色图| 日韩va亚洲va欧美va久久| 欧美激情视频一区二区三区免费| 久久香蕉精品香蕉| 99香蕉国产精品偷在线观看 | 精品久久影院| 久久久免费人体| 国产精品99在线观看| 99久久精品网站| 亚洲婷婷丁香| 精品视频高潮| 91成人网在线观看| 欧美亚洲tv| 四虎884aa成人精品最新| 午夜宅男久久久| 国产精品片aa在线观看 | 成人在线免费观看91| 国产综合亚洲精品一区二| 玖玖玖国产精品| 久久久亚洲欧洲日产| 91精品成人| 国产欧美三级| 亚洲韩日在线| 国产精品视频一区二区三区四蜜臂| 国产99在线| 在线精品一区| 伊伊综合在线| 日韩精选在线| 91精品一区二区三区综合在线爱| 亚欧成人精品| 日本免费一区二区三区四区| 综合激情视频| 欧美激情日韩| 99成人在线视频| 欧美午夜网站| 欧美日韩高清| 精品一区二区三区亚洲| 久久亚洲国产精品一区二区| 成午夜精品一区二区三区软件| 在线视频精品| 精品欧美日韩精品| 久久国产高清| 福利精品一区| 亚洲91网站| 欧美福利在线| 高清一区二区| 国产日韩一区| 蜜臀a∨国产成人精品| 一区二区精品伦理...| 日本色综合中文字幕|