ringkasan:
WeChat, basis pengguna yang sangat besar dan kekakuan pengguna yang sangat kuat, telah menarik perhatian pengembang yang tak terhitung jumlahnya dalam dua tahun terakhir. Nodejs, alat pengembangan yang telah berkembang sangat cepat dalam dua tahun terakhir, sangat cocok untuk membangun backend seluler. Artikel ini menggunakan contoh -contoh yang dikembangkan oleh penulis sendiri untuk menggambarkan cara mengembangkan akun publik WeChat sendiri berdasarkan nodeJS. Dalam contoh ini, Express, WeChat, MongoDB, Monk dan modul lainnya terutama digunakan.
Persiapan:
1. Ajukan permohonan akun resmi WeChat dan kunjungi https://mp.weixin.qq.com/ untuk melamar. Saya tidak akan menjelaskannya terlalu banyak di sini.
2. Beli server. EC2 Amazon direkomendasikan di sini. Untuk pertama kalinya pengguna dapat memilih micro instance. Ini gratis selama satu tahun dan sangat nyaman untuk diterapkan. Cukup masukkan informasi kartu kredit Anda. Seluruh proses dalam bahasa Inggris, tetapi tahun ini gratis, dan layak menghabiskan lebih banyak waktu.
Pasang lingkungan pengembangan NodeJS:
Salinan kode adalah sebagai berikut:
1. Yum -y menginstal gcc
2. Yum -y menginstal gcc -c ++
3. Yum -y instalasi membuat automake
4. Wget http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz
5. Tar -xvzf Node -V0.10.29.tar.gz
6. CD Direktori Unzip
7. ./Configure
8. Make
9. Buat Instal
Instal MongoDB:
Salinan kode adalah sebagai berikut:
1. Wget http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-amzn64-2.6.3.tgz
2. Tar -xvzf MongoDB-Linux-X86_64-enterprise-amzn64-2.6.3.tgz
3. Sudo CP -R -N MongoDB-Linux-X86_64-Enterprise-AMZN64-2.6.3/usr/local/mongodb
Contoh Pendahuluan:
Kelas penulis membentuk tim sepak bola, dan semua orang menyerahkan uang kepada kapten, dan kapten membayar setiap biaya, mencatat biaya dan saldo setiap orang dan memberi tahu semua orang. Karena tidak semua orang dapat datang setiap saat, biaya hanya dapat didistribusikan secara merata oleh orang -orang yang berpartisipasi dalam acara di AA, lebih sulit untuk direkam. Jadi penulis membuat akun resmi WeChat. Setiap kali, Anda hanya perlu memasukkan jumlah konsumsi aktivitas dan memilih jumlah peserta untuk secara otomatis menghasilkan biaya dan saldo setiap orang. Setelah itu, detailnya akan dikirim ke grup WeChat dan semua orang dapat melihatnya.
Dalam contoh ini, penulis sebenarnya membangun mikro-WEB untuk merekam atau menampilkan biaya dan saldo aktivitas melalui halaman web. Akun publik WeChat setara dengan membangun jembatan antara WeChat pengguna dan situs web mikro. Ketika pengguna WeChat mengikuti akun publik penulis, ia dapat secara otomatis membalas pengguna WeChat untuk bantuan melalui mode pengembang platform publik WeChat. Dalam bantuannya, termasuk mengoperasikan tautan web yang sesuai, dan Anda hanya perlu mengklik untuk memasukkan halaman yang sesuai.
Bangun layanan backend akun resmi WeChat:
Semuanya selesai, hanya pengembangan yang tidak tersedia :)
Sebelum Anda mulai, mari kita perkenalkan secara singkat dua modul Express dan WeChat:
Express - Kerangka kerja pengembangan web yang sangat baik. Menggunakan Express, Anda dapat membangun situs web Anda sendiri dengan sangat cepat. Karena server WeChat akan berinteraksi dengan server pengembang melalui permintaan HTTP Post, kerangka kerja Express diperlukan.
Di bawah ini adalah log ketika pengguna baru mengikuti, 103.7.30.84 adalah alamat IP dari server WeChat.
Salinan kode adalah sebagai berikut:
103.7.30.84 POST /WECAT? Tanda tangan = 8A8E408FDA6BBDD6E470AF98865A5F993CEA283 × TAMP = 1408610461 & NONCE = 1572142586 2 200
WeChat - merangkum detail interaksi dengan server WeChat, sehingga pengembang hanya perlu memperhatikan bisnis mereka sendiri.
Pertama, kita perlu menginstal Express dan menggunakan Express untuk membuat proyek:
Salin kode sebagai berikut: 1. Instal NPM -G Express
2. Express -e your_project parameter -e menunjukkan bahwa mesin EJS digunakan, dan mesin Jade digunakan secara default tanpa parameter.
3. CD your_project && npm instal
Struktur direktori setelah pemasangan adalah sebagai berikut:
Salinan kode adalah sebagai berikut:
[EC2-USER@IP-172-31-2-188 your_project] $ ls
app.js bin node_modules package.json Public Routes Views
Selanjutnya instal WeChat:
Salinan kode adalah sebagai berikut:
1. NPM Instal WeChat
Konfigurasi Mode Pengembang WeChat:
Konfigurasikan URL dan token, contohnya adalah sebagai berikut:
Otentikasi Akses Server WeChat dan Balas Otomatis:
Modifikasi app.js, kode yang sesuai adalah sebagai berikut:
Salinan kode adalah sebagai berikut:
app.use ('/user', pengguna);
app.use ('/weixin', weixin);
app.use (express.query ()); // atau app.use (express.query ());
app.use ('/weChat', weChat ('hchismylove', function (req, res, next) {
// Semua informasi input tentang WeChat ada di req.weixin
var message = req.weixin;
console.log (pesan);
if ((message.msgtype == 'event') && (message.event == 'berlangganan')))
{
var refillStr = "<a href =/" http: // your_ip/weixin/refill? weixinid = " + message.fromuserName +"/"> 1. Klik untuk merekam pengisian ulang tim </a>"
var consumptionstr = "<a href =/" http: // your_ip/weixin/consume? weixinid = " + message.fromusername +"/"> 2. Klik untuk merekam konsumsi tim </a>"
var deletestr = "<a href =/" http: // your_ip/weixin/delete? weixinid = " + message.fromuserName +"/"> 3. Klik untuk mundur dari catatan </a>"
var historystr = "<a href =/" http: // your_ip/weixin/history? weixinid = " + message.fromuserName +"/"> 4. Klik untuk meminta riwayat </a>"
var emptystr = "";
var replystr = "Terima kasih atas perhatian Anda!" + "/n" + emptystr + "/n" + refillstr + "/n" + emptystr + "/n" + consumestr
+ "/n" + emptystr + "/n" + deletestr + "/n" + emptystr + "/n" + historystr;
res.reply (balasan);
}
}));
Baris kode berikut dapat digunakan untuk mewujudkan otentikasi akses server WeChat:
Salinan kode adalah sebagai berikut: app.use ('/weChat', weChat ('your_token', function (req, res, next) {
Kode berikut mengimplementasikan pengiriman bantuan otomatis saat pengguna baru mengikuti:
Salinan kode adalah sebagai berikut:
if ((message.msgtype == 'event') && (message.event == 'berlangganan')))
{
...
res.reply (balasan);
}
Tangkapan layar WeChat adalah sebagai berikut: