综合干狼人综合首页,日本а中文在线天堂,中国av一区,日韩va亚洲va欧洲va国产

29
2023/06

微信推送模板消息:使用場(chǎng)景與在 Django 中實(shí)現(xiàn)注意事項(xiàng)

發(fā)布時(shí)間:2023-06-29 09:46:31
發(fā)布者:已經(jīng)寫(xiě)了
瀏覽量:
0

在使用Django開(kāi)發(fā)web應(yīng)用的時(shí)候,很多場(chǎng)景都會(huì)有需要微信相關(guān)功能的介入,最近我們公司在使用python的Django框架配合國(guó)產(chǎn)數(shù)據(jù)庫(kù)OceanBase數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā)互聯(lián)網(wǎng)應(yīng)急指揮系統(tǒng)的時(shí)候,就用到了微信通知,在發(fā)生輿情事件的時(shí)候通過(guò)微信公眾號(hào),通知對(duì)應(yīng)人員有新的事件發(fā)生,或者提醒相關(guān)人員對(duì)應(yīng)事件的進(jìn)度情況

想要使用微信的信息推送,就需要提前做好一些準(zhǔn)備,因?yàn)榘l(fā)送微信模板消息,您需要使用微信公眾平臺(tái) API。

  1. 需要有一個(gè)微信公眾號(hào),并且已經(jīng)獲得了開(kāi)發(fā)者權(quán)限

  2. 獲取到用戶的openid,如何獲取openid點(diǎn)擊查看方法

  3. 需要獲取微信公眾平臺(tái)的 API 密鑰,并且配置好相應(yīng)的回調(diào) URL。

  4. 需要根據(jù)微信公眾平臺(tái)的要求,選擇合適的模板,并填寫(xiě)好模板內(nèi)容。

  5. 根據(jù)微信公眾平臺(tái)的 API 文檔,構(gòu)造合適的請(qǐng)求參數(shù),發(fā)送請(qǐng)求。

  6. 對(duì)于推送消息的響應(yīng)結(jié)果,需要進(jìn)行適當(dāng)?shù)奶幚砗徒馕?,以便于判斷推送消息是否成功?/p>

    廢話直接不多說(shuō),直接貼代碼

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)
        # 準(zhǔn)備數(shù)據(jù)
        if self.user_list:
            self.make_data_list()
        # 發(fā)送請(qǐng)求
        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):
    # 將數(shù)據(jù)存入redis緩存
    redis = get_redis()
    value = json.dumps(value)
    redis.set(name, value, **kwargs)
def get_data(name):
    # 取出數(shù)據(jù)
    redis = get_redis()
    value = redis.get(name)
    if value:
        value = json.loads(value)
    return value

          調(diào)用微信推送類

微信推送模板消息:使用場(chǎng)景與在 Django 中實(shí)現(xiàn)注意事項(xiàng)

關(guān)鍵詞:
返回列表
综合干狼人综合首页,日本а中文在线天堂,中国av一区,日韩va亚洲va欧洲va国产
久久影院电视剧免费观看| 亚洲视频资源在线| 国产欧美日韩精品在线| 国内精品在线播放| 欧美日本一区二区| 欧美一级一级性生活免费录像| 欧美女孩性生活视频| 精品国产一区二区国模嫣然| 1区2区3区精品视频| 亚洲欧美另类图片小说| 艳妇臀荡乳欲伦亚洲一区| 国产麻豆视频一区| 欧美bbbbb| 久久精品av麻豆的观看方式| 亚洲愉拍自拍另类高清精品| 99久久国产综合精品色伊| 欧美精品在线一区二区| 欧美疯狂性受xxxxx喷水图片| 亚洲精品水蜜桃| 国产成人一级电影| 亚洲精品成人精品456| 91在线国产福利| 久久久www免费人成精品| 日日夜夜一区二区| 日韩午夜三级在线| 久久五月婷婷丁香社区| 91一区二区三区在线观看| 日韩主播视频在线| 日韩三级伦理片妻子的秘密按摩| 成人sese在线| 精品国偷自产国产一区| 激情综合网av| 中文字幕精品—区二区四季| 欧美一级二级在线观看| 亚洲国产精品一区二区久久| 国产精品欧美一区二区三区| 91欧美激情一区二区三区成人| 欧美日韩视频在线一区二区| 中文字幕中文乱码欧美一区二区| 久久99国内精品| 91女人视频在线观看| 亚洲精品一区二区精华| 亚洲精品一区二区三区香蕉| 久久蜜臀精品av| 亚洲精品免费电影| av成人免费在线观看| 欧美一区二区免费观在线| 欧美性xxxxxx少妇| 成人一区二区三区中文字幕| 亚洲第一av色| 国产大陆精品国产| 日韩视频在线永久播放| 精品国产伦理网| 亚洲日本va午夜在线影院| 成人免费毛片app| 日本sm残虐另类| 日韩午夜激情av| 大胆欧美人体老妇| 国产精品福利电影一区二区三区四区| 美脚の诱脚舐め脚责91| 国产最新精品免费| 日韩免费福利电影在线观看| yourporn久久国产精品| 国产日韩精品一区| 婷婷亚洲久悠悠色悠在线播放| 久久99久久精品| 免费在线欧美视频| 精品一区二区在线观看| 久久久久久久久一| 亚洲国产另类精品专区| 在线观看精品一区| 欧美伊人精品成人久久综合97| 欧美电视剧在线观看完整版| 国产日韩欧美精品一区| 日韩电影一区二区三区四区| 蜜臀av亚洲一区中文字幕| 国产成人精品免费视频网站| 中文字幕一区二区三区在线观看| 蜜臀av一区二区在线观看| 在线播放国产精品二区一二区四区| 91香蕉视频污| 色猫猫国产区一区二在线视频| 一区二区三区蜜桃| 免费观看30秒视频久久| k8久久久一区二区三区| 国产成人综合亚洲91猫咪| 欧美变态tickle挠乳网站| 蜜桃av一区二区在线观看| 精品处破学生在线二十三| 欧美国产一区在线| 56国语精品自产拍在线观看| 国产美女一区二区| 国产999精品久久久久久绿帽| 日韩欧美三级在线| 日韩欧美在线网站| 成人一区二区三区视频在线观看| 成人av在线播放网址| 在线不卡的av| 国内成+人亚洲+欧美+综合在线| 日本一区二区综合亚洲| 欧美日韩亚洲综合在线| 国产激情91久久精品导航| 国产精品性做久久久久久| 久久精品国产亚洲5555| 久久国产尿小便嘘嘘尿| 精品国产乱码91久久久久久网站| 视频一区中文字幕国产| 风间由美一区二区av101| 狠狠色狠狠色综合日日91app| 欧美激情中文不卡| 日本一区二区视频在线| 欧美一激情一区二区三区| 风间由美一区二区三区在线观看| 欧美理论片在线| 不卡的av电影在线观看| 亚洲欧美在线aaa| 欧美性猛交xxxx黑人交| 欧美性xxxxxx少妇| 日韩欧美亚洲一区二区| 亚洲精品乱码久久久久久久久| 亚洲一区自拍偷拍| 韩国一区二区在线观看| 久久aⅴ国产欧美74aaa| 亚洲国产精品精华液ab| 国产一区 二区 三区一级| 天天综合日日夜夜精品| 国产精品国产三级国产普通话蜜臀| 欧美日韩中字一区| 国产精品一区二区在线观看网站| 色噜噜夜夜夜综合网| 秋霞成人午夜伦在线观看| 成人黄色综合网站| 日韩欧美中文字幕精品| 国产精品一区二区久激情瑜伽| 99在线精品一区二区三区| 欧美午夜理伦三级在线观看| 国产伦精品一区二区三区免费| 欧美精品一区二区精品网| 美美哒免费高清在线观看视频一区二区| 国产精品久久久久久久第一福利| 亚洲综合在线五月| 美美哒免费高清在线观看视频一区二区| 色综合久久中文综合久久牛| 欧美亚洲自拍偷拍| 亚洲综合激情小说| 欧美一区二区三区性视频| 免费黄网站欧美| 26uuu另类欧美| 色8久久精品久久久久久蜜| 不卡电影一区二区三区| 国产亚洲一区二区三区| 国产日韩精品一区二区三区在线| 色av一区二区| 成人的网站免费观看| 夜夜夜精品看看| 国产一区二区福利视频| 亚洲欧美国产77777| 亚洲色图视频网站| 亚洲综合在线观看视频| a在线播放不卡| 国产精品911| 91久久国产综合久久| 91麻豆精品国产91久久久久久久久| 亚洲永久精品大片| 欧美裸体一区二区三区| 亚洲精品免费看| 国产精品久久二区二区| 欧美大白屁股肥臀xxxxxx| 欧美三级一区二区| 国产精品伦一区| 国产色综合一区| 日本欧美肥老太交大片| 亚洲人成亚洲人成在线观看图片| 亚洲欧美国产毛片在线| 欧美一区二区三区日韩视频| 国产精品免费观看视频| 2022国产精品视频| 亚洲一区日韩精品中文字幕| 色婷婷久久久久swag精品| 精品国产一二三| 国产精品国产三级国产aⅴ无密码| 91福利国产精品| 国产精品你懂的| 一区二区三区不卡在线观看| www日韩大片| 精品国产一区a| 久久综合九色综合97婷婷| 国产一区视频导航| 337p日本欧洲亚洲大胆色噜噜| 亚洲午夜av在线| 国产精品毛片高清在线完整版| 日韩欧美aaaaaa| 欧美色精品天天在线观看视频| 久久99蜜桃精品| 一个色妞综合视频在线观看| 日韩一级免费观看| 秋霞影院一区二区| 夜色激情一区二区| 欧美天堂一区二区三区| 亚洲国产乱码最新视频|