Heim  >  Artikel  >  Backend-Entwicklung  >  Tipps zur Implementierung des WeChat-Applet-SMS-Bestätigungscodes mit PHP

Tipps zur Implementierung des WeChat-Applet-SMS-Bestätigungscodes mit PHP

WBOY
WBOYOriginal
2023-06-01 09:42:052689Durchsuche

Mit der Popularität von WeChat-Miniprogrammen beginnen immer mehr Entwickler, WeChat-Miniprogramme als Entwicklungsplattform zu nutzen, um Benutzern ein komfortableres Erlebnis zu bieten. Unter anderem ist der SMS-Bestätigungscode ein unverzichtbarer Bestandteil bei der Benutzerregistrierung, Anmeldung und anderen Szenarien. In diesem Artikel wird hauptsächlich die Verwendung von PHP zum Implementieren von SMS-Bestätigungscodes für WeChat-Miniprogramme vorgestellt.

1. Erhalten Sie den WeChat-Zugriffstoken

Bevor Sie die WeChat-API verwenden, müssen Sie zuerst den Zugriffstoken erhalten. Access_token ist der aufrufende Berechtigungsnachweis für die WeChat-API. Bei jedem Aufruf der WeChat-API muss access_token im Anforderungsheader enthalten sein. Die spezifische Erfassungsmethode lautet wie folgt:

  1. Erstellen Sie ein Miniprogramm auf der öffentlichen WeChat-Plattform und sehen Sie sich dann die App-ID und das AppSecret in den Entwicklungseinstellungen des Miniprogramms an.
  2. Senden Sie eine HTTP-GET-Anfrage basierend auf appId und appSecret, um access_token zu erhalten. Der spezifische Code lautet wie folgt:
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret;
$res = json_decode(file_get_contents($url), true);
$access_token = $res['access_token'];

2. Generieren Sie einen zufälligen Bestätigungscode

Der Prozess zum Generieren eines zufälligen Bestätigungscodes ist sehr einfach. Verwenden Sie einfach die integrierte Rand-Funktion von PHP. Der spezifische Code lautet wie folgt:

$code = rand(1000, 9999);

3. Rufen Sie die SMS-API auf, um den Bestätigungscode zu senden.

Nachdem Sie das access_token erhalten und einen zufälligen Bestätigungscode generiert haben, können Sie die SMS-API aufrufen, um den Bestätigungscode zu senden. Hier nehmen wir Tencent Cloud SMS als Beispiel, andere SMS-Dienstanbieter sind ähnlich.

  1. Erstellen Sie eine Anwendung in der Tencent Cloud SMS-Konsole und erhalten Sie die Anwendungs-ID, den Anwendungsschlüssel und die SMS-Vorlagen-ID.
  2. Generieren Sie eine Signatur basierend auf der Anwendungs-ID und dem Anwendungsschlüssel und generieren Sie SMS-Inhalte basierend auf der SMS-Vorlagen-ID und dem zufälligen Bestätigungscode.
  3. Verwenden Sie die Tencent Cloud SMS API, um Textnachrichten zu senden. Der spezifische Code lautet wie folgt:
rrree

4. Speichern Sie den Bestätigungscode in Redis

Um die Gültigkeitsdauer des Bestätigungscodes sicherzustellen, müssen Sie den generierten zufälligen Bestätigungscode in Redis speichern und einen Gültigkeitszeitraum festlegen. Der spezifische Code lautet wie folgt:

// 生成签名
$timestamp = time();
$sig = md5("appkey=".$appkey."&timestamp=".$timestamp);

// 生成短信内容
$content = "【签名】验证码为:".$code.",有效期5分钟,请勿泄露。如非本人操作,请忽略本短信。";

// 发送短信
$url = "https://yun.tim.qq.com/v5/tlssmssvr/sendsms?sdkappid=".$sdkappid."&random=".rand();
$data = array(
    "tel" => array("nationcode" => "86", "mobile" => $mobile),
    "type" => 0,
    "msg" => $content
);
$data = json_encode($data);
$header = array(
    "Content-type: application/json",
    "Authorization: ".$sig,
    "Timestamp: ".$timestamp
);
$options = array(
    "http" => array(
        "method" => "POST",
        "header" => implode("
", $header),
        "content" => $data
    )
);
$res = json_decode(file_get_contents($url, false, stream_context_create($options)), true);

5. Vollständiger Code

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->setex($mobile, 300, $code);

6. Zusammenfassung

In diesem Artikel wird erläutert, wie Sie mit PHP SMS-Verifizierungscodes für WeChat-Miniprogramme implementieren, einschließlich des Abrufens von access_token, der Generierung zufälliger Bestätigungscodes und des Anrufs SMS-API zum Senden von Bestätigungscodes und Speichern des Bestätigungscodes an Redis. Diese Tipps gelten nicht nur für WeChat-Miniprogramme, sondern auch für andere Arten von Anwendungen. Ich hoffe, dieser Artikel ist für alle hilfreich.

Das obige ist der detaillierte Inhalt vonTipps zur Implementierung des WeChat-Applet-SMS-Bestätigungscodes mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn