ホームページ  >  記事  >  バックエンド開発  >  WeChat パブリック プラットフォームのメッセージ インターフェイス開発 (29) 検証署名とメッセージ応答のマージ_PHP チュートリアル

WeChat パブリック プラットフォームのメッセージ インターフェイス開発 (29) 検証署名とメッセージ応答のマージ_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:14:291042ブラウズ

WeChatパブリックプラットフォーム開発WeChatパブリックプラットフォーム開発者WeChatパブリックプラットフォーム開発モデル署名検証メッセージ応答
著者:Fangbei Studio
原文:http://www.cnblogs.com/txw1958/archive/2013/05/08 /weixin- if29-valid-responseMsg.html

1. 問題の原因

WeChat パブリック プラットフォームは、インターフェイスを有効にするときに検証に有効な関数を使用します。

リーリー

ただし、検証が完了すると、有効な関数は使用されなくなり、responseMsg() に設定する必要があります。

以下の通り

リーリー

この操作は、戻って関数を変更する必要があるため、実際にはさらに面倒です。

2. 問題分析

それを処理するために 2 つの異なる関数を使用する必要があるのはなぜですか?これは、2 つの異なる関数が異なる機能を実行するためです

有効な関数を実行すると、URL とトークンが正しく入力されて送信されたことを確認するために検証文字列が送信されます。このとき、WeChat サーバーによって URL に送信されるリクエストは

です。 リーリー

メッセージに応答するとき、URL アドレスが正しいことが確認されています。この時点での主なタスクは、この時点で送信されるリクエストです。

リーリー

2.解決策

有効な関数を振り返ってみましょう

リーリー

_GET 変数がありますが、_GET 変数とは何ですか? 次の内容は http://www.w3school.com.cn/php/php_get.asp からのものです

$_GET 変数 $_GET 変数は、HTTP GET メソッドで送信された変数名と値を含む配列です。
$_GET 変数は、method="get" でフォームから値を収集するために使用されます。 GET メソッドを使用してフォームから送信された情報は誰でも見ることができます (ブラウザーのアドレス バーに表示されます)。送信される情報の量には制限があります (最大 100 文字)。

なぜ $_GET を使用するのですか? 注: $_GET 変数を使用すると、すべての変数名と値が URL に表示されます。したがって、パスワードやその他の機密情報を送信する場合は、この方法を使用しないでください。ただし、変数は URL に表示されるため、ページをブックマークできます。場合によっては、これが便利です。

パート 2 で説明した 2 つの異なるリクエストの署名検証リクエストでは、URL に echostr 変数があるのに、応答メッセージには echostr 変数がないことに気付きました。 リーリー

次に、同じ考え方を使用して、_GET 変数にこの echostr 変数があるかどうかを判断し、2 つの異なるリクエストを区別します。

最終的なコードは次のようになります:

リーリー

この時点で、もう一方を有効にするために一方に注釈を付ける必要はなくなり、多くの手間が省けます。

http://www.bkjia.com/PHPjc/440276.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/440276.html技術記事 WeChat パブリック プラットフォーム開発 WeChat パブリック プラットフォーム開発者 WeChat パブリック プラットフォーム開発モデル署名検証メッセージ応答 著者: Fangbei Studio 原文: http://www.cnblogs.com/txw1958/archi...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。