摘要:今天看到了微信官方推出的一個(gè)瀏覽器插件,用來(lái)調(diào)試微信后臺(tái)和頁(yè)面的,挺好的。這個(gè)是根據(jù)別人的文章總結(jié)的,時(shí)間戳隨機(jī)數(shù)生成簽名將三者進(jìn)行加密與簽名進(jìn)行對(duì)比之后每次都會(huì)進(jìn)行身份校驗(yàn)。然而后面還有更深的坑。
原文
摸索中遇到的一些坑,雖然很簡(jiǎn)單,但新手還是會(huì)被坑到,就稍微記錄一下吧,也當(dāng)學(xué)習(xí)手冊(cè),最好去了解一下express,不是很難,這邊只是簡(jiǎn)單的配置,更高級(jí)的接口還是去看文檔,模塊或者自己實(shí)現(xiàn)都是可以的
首先你得有一個(gè)公眾號(hào),最好是服務(wù)號(hào),因?yàn)閭€(gè)人的訂閱號(hào)很多功能不提供的,比如自定義菜單,當(dāng)然沒(méi)有也沒(méi)關(guān)系,可以用騰訊提供的測(cè)試號(hào)測(cè)試號(hào).
測(cè)試號(hào)提供完全的功能,基本夠用了。
接下來(lái)就是服務(wù)器的配置了,這邊要說(shuō)一下,公眾號(hào)服務(wù)器的端口必須是80端口,所以自己服務(wù)器最好用nginx代理,但是這樣不好的是服務(wù)端編輯代碼總是很不方便,提交也麻煩,所以自己測(cè)試的話還是用nat123或者花生殼映射本地端口吧。
但是nat123太慢了,建議使用花生殼,具體教程百度吧,很簡(jiǎn)單的。
ps:今天看到了微信官方推出的一個(gè)瀏覽器插件,用來(lái)調(diào)試微信后臺(tái)和頁(yè)面的,挺好的。不過(guò)只能在qq瀏覽器內(nèi)使用微信調(diào)試工具
上圖是服務(wù)器的接口配置
因?yàn)槭腔趎ode-wechat開發(fā)的,所以底層的東西就不用管了,了解一下它的api就好,簡(jiǎn)單來(lái)說(shuō)就是用三個(gè)參數(shù)生成簽名與加密的字符串進(jìn)行對(duì)比以獲得授權(quán)。
我用的是wechat提供的api。只要處理好自己的業(yè)務(wù)就好。
安裝:
npm i wechat --save-dev
與express混合使用
var wechat = require("wechat"); var config = { token: "token", appid: "appid", encodingAESKey: "encodinAESKey"http://可有可無(wú) }; app.use(express.query()); app.use("/wechat", wechat(config, function (req, res, next) { // 微信輸入信息都在req.weixin上 var message = req.weixin; if (message.FromUserName === "diaosi") { // 回復(fù)屌絲(普通回復(fù)) res.reply("hehe"); } else if (message.FromUserName === "text") { //你也可以這樣回復(fù)text類型的信息 res.reply({ content: "text object", type: "text" }); } else if (message.FromUserName === "hehe") { // 回復(fù)一段音樂(lè) res.reply({ type: "music", content: { title: "來(lái)段音樂(lè)吧", description: "一無(wú)所有", musicUrl: "http://mp3.com/xx.mp3", hqMusicUrl: "http://mp3.com/xx.mp3", thumbMediaId: "thisThumbMediaId" } }); } else { // 回復(fù)高富帥(圖文回復(fù)) res.reply([ { title: "你來(lái)我家接我吧", description: "這是女神與高富帥之間的對(duì)話", picurl: "http://nodeapi.cloudfoundry.com/qrcode.jpg", url: "http://nodeapi.cloudfoundry.com/" } ]); } }));
稍微解釋一下。token就是填配置的時(shí)候天的token,appid也提供了。
wechat(config, function (req, res, next)下面就是授權(quán)成功進(jìn)行操作,這邊是根據(jù)關(guān)鍵字回復(fù)。具體api請(qǐng)看api.
不過(guò),這點(diǎn)功能肯定是不夠用的,接下來(lái)就是wechat-api了,基本提供了所有的官方api。
其實(shí)我也是菜鳥。這個(gè)是根據(jù)別人的文章總結(jié)的,
token+時(shí)間戳timestamp+隨機(jī)數(shù)nonce->生成簽名signiture
將三者進(jìn)行加密與簽名進(jìn)行對(duì)比
之后每次都會(huì)進(jìn)行身份校驗(yàn)。
總結(jié)簡(jiǎn)單的大概就是這些了,雖然感覺(jué)沒(méi)啥,當(dāng)時(shí)也是掉進(jìn)各種坑。然而后面還有更深的坑。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/78264.html
問(wèn)題 1. - 釘釘開發(fā)需要哪些資質(zhì),需要申請(qǐng)哪些賬號(hào)、走哪些流程(像微信小程序的話,一大堆申請(qǐng)、一大堆企業(yè)認(rèn)證)——這些需要提前準(zhǔn)備了解清楚 怎么開發(fā)? 有哪些功能? 目前市場(chǎng)上有哪些別人的框架 收集學(xué)習(xí)材料 有哪些功能有,但是存在限制(例如小程序的打開 app 功能) 有哪些功能自身存在限制性(如小程序的地圖) 開發(fā)邊界是什么?有哪些需求是做不到的 有哪些功能是需要特殊資質(zhì)的(如...
摘要:前言年月號(hào)微信小程序正式上線,小程序不需要安裝就能使用,依托微信強(qiáng)大的生態(tài)環(huán)境,能做到很多所不能做的事情。當(dāng)然更希望的是小程序官方能給出相應(yīng)的單元測(cè)試方案吧。 前言 2017年1月9號(hào)微信小程序正式上線,小程序不需要安裝就能使用,依托微信強(qiáng)大的生態(tài)環(huán)境,能做到很多H5所不能做的事情。從微信小程序發(fā)布這段時(shí)間,陸陸續(xù)續(xù)開發(fā)了不少小程序相關(guān)的項(xiàng)目,總結(jié)了一些通用性的組件,但是對(duì)于小程序如何...
摘要:年加入騰訊云云開發(fā)團(tuán)隊(duì)?;?,云服務(wù)商發(fā)展出這類更高級(jí)的開發(fā)服務(wù)。小程序云開發(fā)說(shuō)了這么多無(wú)服務(wù)開發(fā)的概念優(yōu)點(diǎn),在小程序無(wú)服務(wù)開發(fā)這一塊,騰訊云有什么樣的作品呢。這就是今天要重點(diǎn)介紹的,小程序云開發(fā),這就是騰訊云與微信聯(lián)合研發(fā)后,交出的答卷。 李成熙,騰訊云高級(jí)工程師。2014年度畢業(yè)加入騰訊AlloyTeam,先后負(fù)責(zé)過(guò)QQ群、花樣直播、騰訊文檔等項(xiàng)目。2018年加入騰訊云云開發(fā)團(tuán)隊(duì)。...
摘要:在微信小程序中,要更新視圖就只能修改,而視圖層也只能通過(guò)事件向邏輯層傳遞交互信息。頁(yè)面移植到微信小程序要修改的地方也還比較多,主要是標(biāo)簽和的交互及小程序提供的功能部分。 小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用「觸手可及」的夢(mèng)想,用戶掃一掃或搜一下即可打開應(yīng)用。也體現(xiàn)了「用完即走」的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問(wèn)題。應(yīng)用將無(wú)處不在,隨時(shí)可用,但又無(wú)需安裝卸載。 —...
閱讀 1652·2021-10-14 09:42
閱讀 3917·2021-09-07 09:59
閱讀 1373·2019-08-30 15:55
閱讀 640·2019-08-30 11:17
閱讀 3403·2019-08-29 16:06
閱讀 570·2019-08-29 14:06
閱讀 3199·2019-08-28 18:14
閱讀 3719·2019-08-26 13:55