検索
ホームページWeChat アプレットWeChatの開発Nodejs WeChat パブリック アカウント開発の分析 - 1. WeChat パブリック アカウントにアクセスする

この記事では、主にnodejs WeChatパブリックアカウント開発の詳細な説明を紹介します - 1. WeChatパブリックアカウントにアクセスすることは、困っている友人がそれを参照することができます

WeChatパブリックアカウントにアクセスすることは、開発の最初のステップです。すべては始まる 難しいけど、最初の一歩をしっかり踏み出せば道は広がる。

1. パブリック プラットフォーム テスト アカウントの使用

WeChat パブリック プラットフォームにログインする 多くの開発者は認定された WeChat パブリック アカウントを持っていないため、より妥協的な方法は、パブリック プラットフォーム テスト アカウント を使用して機能をテストします。その利点は、認証のしきい値に制限されることなく、WeChat 公式アカウントのほとんどの機能をテストできることです。 <code>公众平台测试帐号来测试功能,其优势是能够测试微信公众号的绝大部分功能,不受认证门槛的限制。

进入测试账号管理界面:

我们需要配置接口的信息,URLToken是微信公众平台和本地开发服务建立连接的桥梁。

微信配置好后,扫面下方的测试号二维码,即可以在手机上测试开发的功能。

2.验证公众号

一图胜千言。接入公众号时,微信公众平台需要验证开发者的身份,向开发者填写的URL发送一个GET请求,请求中包含4个参数:signature<a href="http://www.php.cn/wiki/1343.html" target="_blank">echo</a>str<a href="http://www.php.cn/wiki/1268.html" target="_blank">time</a>stampnonce,收到该请求,我们需要做的事情:

  1. tokentimestampnonce三个参数进行字典排序;

  2. 将三个字符串拼接成一个字符串进行sha1加密;

  3. 将加密后的字符串与signature进行比较,如果相同,表示这个请求来自微信,我们直接原样返回echostr的内容,接入验证成功。

3.搭建开发服务器

搭建开发服务器的方式有很多,如购买云服务器、使用花生壳、ngrok、localtunnel等。这里为了简单起见采用localtunnel。先全局方式安装localtunnel,

npm install -g lt

启动lt

lt --port 8080  //对外暴露8080端口,可端口号可自己随便设定

4.编写代码

好了,现在开始编写app.js的代码:

&#39;use strict&#39;

var Koa = require(&#39;koa&#39;);
var sha1 = require(&#39;sha1&#39;);

var config = {
  wechat:{
    appID:&#39;...&#39;, //填写你自己的appID
    appSecret:&#39;...&#39;, //填写你自己的appSecret
    token:&#39;...&#39; //填写你自己的token
  }
};

var app = new Koa();

app.use(function *(next){
  var token = config.wechat.token;
  var signature = this.query.signature;
  var nonce = this.query.nonce;
  var timestamp = this.query.timestamp;
  var echostr = this.query.echostr;
  var str = [token,timestamp,nonce].sort().join(&#39;&#39;); //按字典排序,拼接字符串
  var sha = sha1(str); //加密
  this.body = (sha === signature)? echostr + &#39;&#39; : &#39;failed&#39;; //比较并返回结果
});
app.listen(8080);

5.配置测试公众号信息

代码编写完毕,现在开始正式配置啦。在终端中输入lt --port 8080启动localtunnel,得到对外可访问的URL:

这个URL填写到测试账号管理界面中的URLToken字段可随意填写,方便起见,就用wemovie吧!

填写完毕,点击提交,发现验证成功,恭喜!

注:

  1. 由于localtunnel不是很稳定,所以可能一开始点击提交提示的是黄条的配置失败,需要多点一两次按钮;

  2. 每次重启程序,都需要重启localtunnel获取新的URL

  3. テスト アカウント管理インターフェイスに入ります:

インターフェースURL、および トークン は、WeChat パブリック プラットフォームとローカル開発サービスを接続するブリッジです。 🎜🎜🎜🎜WeChat を設定したら、テストをスキャンします番号QRコードを使用すると、開発した機能を携帯電話でテストできます。 🎜🎜🎜🎜🎜2. 公開アカウントを確認します。 🎜 🎜🎜百聞は一見にしかず。公式アカウントにアクセスする場合、WeChat パブリック プラットフォームは開発者の身元を確認し、開発者が入力した URL に GET リクエストを送信する必要があります。リクエストには、signature という 4 つのパラメータが含まれます。 <a href="http://www.php.cn/wiki/1343.html" target="_blank">echo</a>str<a href="http://%20www.php.cn/wiki/1268.html" target="_blank">タイム</a>スタンプnonce、このリクエストを受け取った後に行う必要があること: 🎜
  • 🎜 辞書は 3 つのパラメータ tokentimestamp、および nonce を並べ替えます。 li >🎜3 つの 文字列を 1 つの文字列に連結して、sha1 暗号化; 🎜🎜
  • 🎜暗号化された文字列を signature と比較します。同様にWeChatからのリクエストということなので、echostrの内容をそのまま返すことでアクセス認証は成功です。 🎜🎜🎜🎜🎜3. 開発サーバーを構築する🎜🎜🎜🎜 開発サーバーを構築するには、クラウドサーバーを購入する、ピーナッツシェル、ngrok、localtunnel を使用するなど、さまざまな方法があります。ここでは簡単にするために Localtunnel を使用します。まず localtunnel をグローバルにインストールします🎜rrreee🎜 lt🎜rrreee🎜🎜を開始します🎜🎜🎜🎜 さて、app.js コードを書き始めます:🎜rrreee🎜🎜 5. 公式アカウント情報🎜🎜🎜🎜 コードが記述され、正式な設定が始まります。ターミナルに lt --port 8080 と入力して localtunnel を開始し、外部からアクセス可能な URL を取得します: 🎜🎜🎜🎜この URL は、テスト アカウント管理インターフェイス に入力されます。 code> >URLToken フィールドは、便宜上、wemovie を使用するだけで自由に入力できます。 🎜🎜🎜 入力後、[送信] をクリックすると、検証が成功したことがわかります。おめでとうございます。 🎜🎜🎜🎜🎜注:🎜🎜
    1. 🎜 localtunnel はあまり安定していないため、最初に Submit をクリックすると、Configuration failed という黄色のバーが表示されます。 1 つまたは 2 つのボタンが必要です。プログラムを再起動するたびに、localtunnel を再起動して新しい URL を取得し、再構成する必要があります。 (これは、シンプルさを選択するために支払う代償です T_T)🎜🎜🎜🎜🎜これまでのところ、WeChat 公式アカウント開発への扉は開かれました。次に、nodejs WeChat 公式アカウント開発の旅を続けていきます🎜。
  • 以上がNodejs WeChat パブリック アカウント開発の分析 - 1. WeChat パブリック アカウントにアクセスするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    Video Face Swap

    Video Face Swap

    完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

    ホットツール

    WebStorm Mac版

    WebStorm Mac版

    便利なJavaScript開発ツール

    SublimeText3 英語版

    SublimeText3 英語版

    推奨: Win バージョン、コードプロンプトをサポート!

    EditPlus 中国語クラック版

    EditPlus 中国語クラック版

    サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

    ZendStudio 13.5.1 Mac

    ZendStudio 13.5.1 Mac

    強力な PHP 統合開発環境

    AtomエディタMac版ダウンロード

    AtomエディタMac版ダウンロード

    最も人気のあるオープンソースエディター