使用flask框架和新浪云sae搭建微信公眾號(hào)自動(dòng)回復(fù)的各種坑

上一篇我們已經(jīng)通過(guò)詳細(xì)的步驟搞定了微信公眾號(hào)的自動(dòng)回復(fù)(鏈接這里:使用flask框架+新浪sae+圖靈機(jī)器人api來(lái)做微信公眾號(hào)自動(dòng)回復(fù)的超詳細(xì)方法郑兴,但是一開始不是這么順利的中間遇到各種坑鹏漆,下面一一道來(lái)!
1.新浪云應(yīng)用的坑
因?yàn)槭堑谝淮斡肧AE,所以就跟著網(wǎng)上各種教程在走,然而一開始配置的時(shí)候沒(méi)注意他們基本都是用的共享環(huán)境的云應(yīng)用!2嗜印!所以文件都配錯(cuò)了僻爽,怪不得在token驗(yàn)證那里一直報(bào)錯(cuò)3娴铩!胸梆!后來(lái)幾經(jīng)波折再問(wèn)了客服敦捧,客服發(fā)現(xiàn)我跟錯(cuò)文檔了,甩了一份獨(dú)享環(huán)境的文檔給我碰镜。就是下面這份:

http://document.applinzi.com/sae/python-docker.html#%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83%E8%AF%B4%E6%98%8E

不得不說(shuō)兢卵,這份文檔寫的詳細(xì)多了,比網(wǎng)站上另一份文檔易懂绪颖,不知道為啥新浪不更新這份文檔到官網(wǎng)去济蝉,不過(guò)新浪sae服務(wù)器的架構(gòu)圖倒是不錯(cuò)的,可以仔細(xì)看看就能明白其中的原理:


sae架構(gòu)圖

按照這份文檔去配置云應(yīng)用就比較簡(jiǎn)單菠发,要注意Procfile這個(gè)文件是用來(lái)啟動(dòng)容器讓程序運(yùn)行的,直接用記事本寫就可以了贺嫂,里面填上:

wb: python app.py

注意wb后面的冒號(hào)還需要再空格一下才行滓鸠!
一開始沒(méi)有這個(gè)文件,導(dǎo)致git最后上傳遠(yuǎn)程倉(cāng)庫(kù)老是報(bào)錯(cuò)如下:

第二個(gè)小坑是最好申請(qǐng)了新浪云應(yīng)用后就進(jìn)行實(shí)名認(rèn)證!
認(rèn)證成功后是這樣的


為什么我要建議你這么做呢第喳,因?yàn)榈谝唬?br> 新浪云的云豆其實(shí)扣的很快的一旦你的服務(wù)器搭好后糜俗,一天一百多云豆在扣,不認(rèn)證兩天就用完了。悠抹。珠月。雖然我們只是體驗(yàn),但是還沒(méi)體驗(yàn)就結(jié)束了是不是太扯了楔敌?

第二:如果沒(méi)有驗(yàn)證有可能會(huì)引起后面token驗(yàn)證通不過(guò)啤挎,這是據(jù)部分網(wǎng)友反應(yīng)的,所以還是驗(yàn)證吧卵凑,還多300云豆庆聘。

2. flask框架的小坑
從新浪云的坑爬起來(lái)后,我又掉入了flask的坑勺卢。伙判。。別問(wèn)為什么黑忱,就是我太菜了??第一次用flask框架宴抚,一開始連本地應(yīng)用都沒(méi)跑通,后來(lái)多次檢查才發(fā)現(xiàn)環(huán)境選錯(cuò)了甫煞,要選在虛擬環(huán)境下菇曲,看我紅色畫出的部分:


爬出虛擬的坑,又跌進(jìn)外網(wǎng)無(wú)法訪問(wèn)的問(wèn)題危虱,于是又開始各種問(wèn)谷歌羊娃,最后被我找到了解決的辦法,看pycharm的官方文檔介紹:
clipboard.png

原來(lái)代碼中指定的ip和端口是無(wú)效的埃跷,需要在以下位置設(shè)置龙屉,先找到“Edit Configuration"這地方叉瘩,點(diǎn)開:

然后你看到下面這個(gè)頁(yè)面,在我紅框圈住的地方添加那一段代碼保存就ok了:

再次運(yùn)行就看到這樣的畫面:

好了,flask這里的坑也爬出來(lái)了懂鸵,二級(jí)域名也可以訪問(wèn)了,下面我們轉(zhuǎn)站到微信公眾號(hào)??

3.微信公眾號(hào)的坑坑坑
當(dāng)新浪云容器啟動(dòng)了跟伏,二級(jí)域名也正常打開了耻姥,我們就來(lái)到微信公眾號(hào)平臺(tái)這里打算開啟“開發(fā)者模式”。按照步驟一步步配置后點(diǎn)擊提交厕吉,滿以為是個(gè)輕松的配置酱固。納尼?卻出現(xiàn)“token驗(yàn)證失敗”

token驗(yàn)證失敗头朱。运悲。。.png

這是神馬鬼项钮?趕緊再次谷歌了一下班眯,發(fā)現(xiàn)網(wǎng)上說(shuō)出現(xiàn)此種情況的原因很多OM!!署隘!有說(shuō)是沒(méi)有實(shí)名認(rèn)證的宠能、有說(shuō)是二級(jí)域名末尾沒(méi)有加斜杠的(就是/wechat 這種應(yīng)該改為 /wechat/ 這樣、還有說(shuō)token填寫不一致的等等磁餐。好吧 违崇,小白掌柜決定一一來(lái)排查。

首先崖媚,新浪云已經(jīng)實(shí)名認(rèn)證了亦歉,所以排除;再次token兩方都是一致的畅哑,也排除肴楷;再來(lái)給app.route后面的函數(shù)綁定加斜杠,再次驗(yàn)證還是失敗荠呐,排除了這種赛蔫;查看token前后都無(wú)空格,所以也排除泥张;最后是sha1算法驗(yàn)證這里出的問(wèn)題呵恢,直接改成這樣:

image.png

返回空值就ok! 好啦媚创,再次提交渗钉,終于爬出了token的坑,一不小心就要來(lái)到最后一個(gè)大坑了钞钙!

當(dāng)小白我把圖靈機(jī)器人的api代碼和解析微信回復(fù)的代碼加入后鳄橘,再次更新遠(yuǎn)程倉(cāng)庫(kù)成功后應(yīng)該發(fā)出文字就有回應(yīng)了,但是公眾號(hào)卻出現(xiàn)下面這個(gè)芒炼!


是的瘫怜,你沒(méi)有看錯(cuò),就是“該公眾號(hào)提供的服務(wù)出現(xiàn)故障本刽,請(qǐng)稍后再試”這個(gè)大坑>ㄅ取!子寓!瓦特暗挑,這又是怎么回事?搜索了一圈斜友,發(fā)現(xiàn)好多小伙伴遇到這個(gè)問(wèn)題窿祥,而且這個(gè)問(wèn)題的原因也跟token一樣有很多種。蝙寨。晒衩。于是乎,又開始“掃雷”之路墙歪,第一種:

  • 你的接口返回值里面有空格(這個(gè)巨坑)看官方文檔里面是一堆空格L怠!虹菲!

我們來(lái)看微信公眾平臺(tái)的官方文檔:


看到?jīng)]靠胜,官方文檔都是空格,這樣就會(huì)導(dǎo)致服務(wù)出現(xiàn)故障毕源。解決方法:
去掉xml中的所有空格就ok(尤其要注意符號(hào)之間的空格浪漠,請(qǐng)嚴(yán)格檢查)。不過(guò)小白檢查過(guò)自己的代碼不是這個(gè)原因霎褐,所以排除址愿;

  • 第二種:接口返回值的字段取值不對(duì)!

我們?cè)賮?lái)看官方文檔:

文本消息.png

ToUserName冻璃、FromUserName參數(shù)值取錯(cuò)這個(gè)也很容易導(dǎo)致出現(xiàn)故障响谓。
因?yàn)楸粍?dòng)回復(fù)用戶信息返回值里面的ToUserName、FromUserName參數(shù)值
應(yīng)該取值對(duì)應(yīng)接收普通消息接口里面的FromUserName省艳、ToUserName娘纷。不過(guò)小白發(fā)現(xiàn)自己并沒(méi)有搞錯(cuò),所以也排除了跋炕;

  • 第三種:之前公眾號(hào)給第三方授權(quán)過(guò)

解決辦法就是直接去“授權(quán)管理”那里點(diǎn)擊取消就可以了赖晶!然而小白打開自己的授權(quán)管理發(fā)現(xiàn)如下:


授權(quán)管理

空空如也唱起來(lái)??所以繼續(xù)排除這種;

  • 第四種:開發(fā)者回復(fù)異常的數(shù)據(jù)

我們來(lái)看微信官方文檔對(duì)“服務(wù)出現(xiàn)故障辐烂,請(qǐng)稍后再試”的解釋:


故障官方解釋.png

根據(jù)這個(gè)小白覺(jué)得應(yīng)該是回復(fù)了異常數(shù)據(jù)遏插,于是開啟了微信“接口告警”這個(gè)功能:


接口告警.png

不得不說(shuō)微信公眾平臺(tái)的這個(gè)功能還是要有用的!接著去修改了下面的報(bào)警次數(shù):
告警閾值.png

(其實(shí)不改也行棉圈,就是默認(rèn)的5分鐘超過(guò)30次就會(huì)在群里報(bào)警提示)
就這樣終于讓小白收到了錯(cuò)誤提示如下圖:


錯(cuò)誤樣例.png

所以是在解析微信公眾號(hào)回復(fù)并做出響應(yīng)的時(shí)候涩堤,自動(dòng)回復(fù)的格式出錯(cuò)了!這下終于找到錯(cuò)誤所在分瘾,就可以對(duì)癥下藥了??胎围。經(jīng)過(guò)一番吭哧吭哧的鼓搗,終于成功了德召,再次看到下面的圖很是欣慰:
成功.png

最后終于爬出這個(gè)大坑白魂,走上光明大道??。經(jīng)過(guò)這次項(xiàng)目上岗,找到了自己的各種不足福荸,通過(guò)搜索n個(gè)頁(yè)面來(lái)查錯(cuò)??:


nnn.PNG

學(xué)會(huì)了查看服務(wù)器的日志跟運(yùn)維接口告警這些也是挺好的。希望上面的總結(jié)能幫你避開坑坑坑肴掷,一路666敬锐!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末背传,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子台夺,更是在濱河造成了極大的恐慌径玖,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件颤介,死亡現(xiàn)場(chǎng)離奇詭異梳星,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)滚朵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門冤灾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人辕近,你說(shuō)我怎么就攤上這事韵吨。” “怎么了亏推?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵学赛,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我吞杭,道長(zhǎng)盏浇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任芽狗,我火速辦了婚禮绢掰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘童擎。我一直安慰自己滴劲,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布顾复。 她就那樣靜靜地躺著班挖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪芯砸。 梳的紋絲不亂的頭發(fā)上萧芙,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音假丧,去河邊找鬼双揪。 笑死,一個(gè)胖子當(dāng)著我的面吹牛包帚,可吹牛的內(nèi)容都是我干的渔期。 我是一名探鬼主播,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼疯趟!你這毒婦竟也來(lái)了拘哨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤信峻,失蹤者是張志新(化名)和其女友劉穎宅静,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體站欺,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年纤垂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了矾策。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡峭沦,死狀恐怖贾虽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情吼鱼,我是刑警寧澤蓬豁,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站菇肃,受9級(jí)特大地震影響地粪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜琐谤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一蟆技、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧斗忌,春花似錦质礼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至唧躲,卻和暖如春造挽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背惊窖。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工刽宪, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人界酒。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓圣拄,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親毁欣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子庇谆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348