ホームページ >バックエンド開発 >Python チュートリアル >カスタム DingTalk ロボットのサンプル コードを使用するために Python を学習する
#1. カスタム ロボットの追加
関連する学習の推奨事項: Python ビデオ チュートリアル
2. 書くPython コードは、DingTalk Robot によって提供される Webhook をリクエストします。
DingTalk Custom Robot 公式ドキュメント
安全な方法で署名メソッドを使用します:
最初のステップでは、タイムスタンプ「\n」キーを署名文字列として使用し、HmacSHA256 アルゴリズムを使用して署名を計算し、Base64 エンコードを実行します。最後に、署名パラメータを urlEncode して最終署名を取得します ( UTF -8 文字セットを使用する必要があります)。
#パラメータの説明 | タイムスタンプ |
現在のタイムスタンプ (ミリ秒単位) は、リクエストの呼び出し時刻から 1 時間を超えることはできません | #secret |
import requests #python 3.8 import time import hmac import hashlib import base64 import urllib.parse timestamp = str(round(time.time() * 1000)) secret = '加签时生成的密钥' secret_enc = secret.encode('utf-8') string_to_sign = '{}\n{}'.format(timestamp, secret) string_to_sign_enc = string_to_sign.encode('utf-8') hmac_code = hmac.new(secret_enc, string_to_sign_enc, digestmod=hashlib.sha256).digest() sign = urllib.parse.quote_plus(base64.b64encode(hmac_code)) print(timestamp) print(sign) 2 番目のステップは、最初のステップで取得したタイムスタンプと署名値を結合することです。 URL にステップインします。 |
タイムスタンプ | 最初のステップで使用されるタイムスタンプ |
最初のステップで取得された署名値 | |
3 番目のステップ、リクエストの送信url='生成的Webhook×tamp={}&sign={}'.format(timestamp, sign) print (url) headers={ 'Content-Type':'application/json' } json={"msgtype": "text", "text": { "content": "888" } } resp=requests.post(url=url,headers=headers,json=json) print (resp.text)結果: |
全体のコード: |
プログラミング ビデオ
以上がカスタム DingTalk ロボットのサンプル コードを使用するために Python を学習するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。