1. 맞춤형 로봇 추가
관련 학습 권장 사항: python 비디오 튜토리얼
2. DingTalk 로봇을 요청하는 Python 코드 작성 주어진 웹훅
DingTalk 맞춤형 로봇 공식 문서
보안 방법은 서명 방법을 사용합니다.
첫 번째 단계는 타임스탬프+"n"+키를 서명 문자열로 사용하고 HmacSHA256 알고리즘을 사용하여 계산하는 것입니다. , Base64 인코딩, 마지막으로 서명 매개변수를 urlEncode하여 최종 서명을 얻습니다(UTF-8 문자 집합을 사용해야 함).
Parameters |
설명 |
timestamp |
현재 타임스탬프(밀리초)는 요청 호출 시간으로부터 1시간을 초과할 수 없습니다 |
비밀 | Key, 로봇 보안 설정 페이지, 서명 열 아래에 SEC로 시작하는 문자열이 표시됩니다 |
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)
두 번째 단계는 첫 번째 단계에서 얻은 타임스탬프와 서명 값을 URL에 연결하는 것입니다.
Parameters |
설명 |
timestamp |
첫 번째 단계에서 사용된 타임스탬프 |
sign |
첫 번째 단계에서 얻은 시그니처 값 |
세 번째 단계, 요청 보내기
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)
결과:
전체 코드:
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) url='生成的Webhook×tamp={}&sign={}'.format(timestamp, sign) print (url) headers={ 'Content-Type':'application/json' } json={"msgtype": "text", "text": { "content": "测试" } } resp=requests.post(url=url,headers=headers,json=json) print (resp.text)
관련 학습 권장 사항: 프로그래밍 비디오
위 내용은 맞춤형 DingTalk 로봇의 샘플 코드를 사용하기 위해 Python을 배우십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!