ホームページ  >  記事  >  WeChat アプレット  >  WeChat アプレット メッセージ プッシュ php サーバーの検証

WeChat アプレット メッセージ プッシュ php サーバーの検証

PHPz
PHPzオリジナル
2017-04-04 11:42:562647ブラウズ

設定ページ ([設定] >> [開発設定]):


  1. サーバーのドメイン名を設定します
    例: https://hosts.com
    http とhttps プロトコル。

  2. メッセージプッシュを設定する
    2.1 サーバーinterfacetest.phpをサーバーに追加します。test.phpインターフェースの内容は主に、メッセージがトークンを介してWeChatによって送信されたかどうかを確認することです。コードは公式を参照しています。例:
    define("TOKEN","xxxxx");/ バックグラウンドに入力されたトークン<code>define("TOKEN","xxxxx");/ 后台填写的token<br>$wechatObj = <a href="http://www.php.cn/wiki/165.html" target="_blank">new</a> wechatAPI();<br>$wechatObj->isValid();<br><a href="http://www.php.cn/wiki/164.html" target="_blank">class</a> wechatAPI<br>{<br>public function isValid()//验证微信接口,如果确认是微信就返回它传来的<a href="http://www.php.cn/wiki/1343.html" target="_blank">echo</a>str参数<br>{<br> $echoStr = $_GET["echostr"];<br> <a href="http://www.php.cn/wiki/109.html" target="_blank">if</a> ($this->checkSignature()) {<br>   echo $echoStr;<br>   exit;<br> }<br>}<br>private function checkSignature()   //官方的验证<a href="http://www.php.cn/wiki/145.html" target="_blank">函数</a><br>{<br> $signature = $_GET["signature"];<br> $<a href="http://www.php.cn/wiki/1268.html" target="_blank">time</a>stamp = $_GET["timestamp"];<br> $nonce = $_GET["nonce"];<br> $token = TOKEN;<br> $tmpArr = <a href="http://www.php.cn/wiki/58.html" target="_blank">array</a>($token, $timestamp, $nonce);<br> <a href="http://www.php.cn/wiki/1087.html" target="_blank">sort</a>($tmpArr, SORT_<a href="http://www.php.cn/wiki/57.html" target="_blank">STRING</a>);<br> $tmpStr = <a href="http://www.php.cn/wiki/1336.html" target="_blank">implode</a>( $tmpArr );<br> $tmpStr = <a href="http://www.php.cn/wiki/1366.html" target="_blank">sha1</a>( $tmpStr );<br> if( $tmpStr == $signature ){<br>   <a href="http://www.php.cn/wiki/135.html" target="_blank">return</a> true;<br> }<a href="http://www.php.cn/wiki/111.html" target="_blank">else</a>{<br>   return false;<br> }<br>}<br>};$wechatObj = new
    wechatAPI();
    $wechatObj->isValid();
    class wechatAPI{
    public function isValid()//WeChat インターフェースを検証し、WeChat であることが確認された場合は、echostr パラメータ {
    $echoStr = $_GET["echostr"];
    if
    ($this-> checkSignature()) {

    echo $echoStr;
  3. exit;
}🎜}🎜private function checkSignature() //公式検証関数🎜🎜{🎜 $signature = $_GET["signature"];🎜 $ time🎜stamp = $_GET["timestamp"];🎜 $nonce = $_GET["nonce"];🎜 $token = TOKEN;🎜 $tmpArr = 配列🎜($token, $timestamp, $nonce);🎜 sort🎜($tmpArr, SORT_🎜STRING🎜);🎜 $tmpStr = implode🎜( $tmpArr );🎜 $tmpStr = sha1🎜( $tmpStr );🎜 if ( $tmpStr == $signature ) {🎜 return🎜 true;🎜 }else🎜{🎜 return false;🎜 }🎜}🎜};🎜2.2 ミニのバックグラウンド メッセージ プッシュ関連情報を設定するプログラム🎜URL (サーバーアドレス): https:/// /hosts.com/xx/test.php🎜トークン: 上記で定義された「xxxxx」などの仕様に準拠した任意の🎜文字列🎜🎜EncodingAES🎜Key🎜 (メッセージ暗号化キー): (ランダムに生成され、自分で保存するだけです。これは暗号化と復号化にのみ使用されます) 🎜メッセージ暗号化方法: 暗号化と復号化の問題を考慮する必要はなく、当面は平文を選択します。 🎜データ形式: ニーズに応じて選択してください。 🎜送信して問題がなければ成功です。 (問題がある場合は、ブラウザのテストに合格するために偽のデータを使用できます)🎜🎜🎜

以上がWeChat アプレット メッセージ プッシュ php サーバーの検証の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。