WeChat/YiXin パブリック プラットフォーム開発 (4): 公式アカウント デバッガー (WeChat プラットフォームをシミュレートし、PHP ソース コードを提供)
WeChat/YiXin パブリック プラットフォームを開発する場合、デバッグは面倒なことが多く、通常、携帯電話で試して変更を加えたり、サーバーにログを書き込んだりするしかありません。サーバースクリプトにバグがあり、それが携帯電話に表示されない場合、それを追跡するのは簡単ではありません。開発プロセス中に、WeChat/YiXin プラットフォームをシミュレートし、公開アカウントの URL にアクセスして詳細な応答データを表示できるデバッガーを作成しました。これにより、公開アカウントのデバッグが非常に簡単になります。特別にみんなと共有します。
デバッガーのアドレス: http://www.jostudio.org/emulator.php
インターフェースは以下の通りです: 公式アカウントのURLを入力し、テキストメッセージを送信すると、応答データが表示されます。開発とデバッグを同時に行います。
デバッガーはテキスト メッセージを送信し、テキストの内容を入力して、[テキスト メッセージの送信] ボタンを押すことができます。
デバッガーは、メニューのクリックをシミュレートし、メニューの EventKey 値を入力して、「Click Menu」キーを押すこともできます。
デバッガーはユーザーの注意をシミュレートして「最初から開始」ボタンを押すこともできます。このとき、デバッガーは公式アカウントの URL に購読メッセージを送信します。
公式アカウントのURL応答処理でエラーが発生した場合、返信データの表示にも表示されるのでデバッグに非常に便利です!
注: デバッガーが公式アカウント URL にメッセージを送信するとき、送信者の openid は「emulator_user」です
謎の機能: このデバッガーは、Web プロキシのように任意の URL にアクセスできます。たとえば、次の図は www.baidu.com にアクセスし、[最初から開始] をクリックすると、返されるデータが表示されます。
返されたデータの中国語の文字が文字化けするのはなぜですか? これは、baidu.com が gbk でエンコードされた中国語を返し、デバッガーが WeChat プラットフォームのルールに従い、UTF-8 でエンコードされた中国語を使用するためです。「返されるデータ」を確認してください。 " "GBK エンコーディングです" オプションを選択し、"最初から開始" をクリックして再送信すると、返される結果は中国語で文字化けしません。
「返されるデータは GBK エンコードである」にチェックを入れ、「最初から開始」をクリックして、再度 www.baidu.com にアクセスすると、「Web ページが存在しません」と表示されます。なぜですか?これは、デバッガーが WeChat プラットフォームのルールに従い、URL の後に署名値を自動的に追加し、POST モードで URL にアクセスするため、Baidu はこの URL が存在しないと判断するためです。
「GET モードで URL にアクセスする」オプションをオンにし、「返信データは GBK でエンコードされる」のチェックを外します。「最初から開始」をクリックすると、今度は正常に動作します。
追記: Baidu のホームページは utf-8 でエンコードされていますが、エラー ページは gbk でエンコードされています
注意: 上記のプロセスは他の Web サイトにアクセスする実験です。実際に公式アカウントの URL をデバッグする場合は、「GET モードで URL にアクセスする」および「返されるデータは GBK エンコード」のオプションはチェックしないでください。
おい、もっと賢く www.facebook.com にアクセスして見せてくれ。Web ページはすぐに表示されるよ。どんな URL にもアクセスできるよ。 これは壁の回避ですか? !さて、敵です!
(ただし、デバッガーは Web ページを読み取って表示するだけで、Web プロキシのさまざまな機能を完了していないため、Facebook にログインすることはできません)
デバッガーのソース コードに興味のあるお子様は、私のリソースからダウンロードできます。 デバッガーのソースコードのダウンロード
ソース コードには、emulator.php というファイルが 1 つだけあり、独自のサーバーにインストールできます
説明はありません。ソースコードのコメントを読んでください