python接入微信公众号_Python学习之微信公众号接入 一 验证
標(biāo)簽:
最近看了些Python的書,但是感覺沒有什么進步,想做點事情試試,剛好我以前弄了一個微信公眾號,好久不管理了
這次就用它來練練手。
看網(wǎng)上有些教程告訴怎么弄的,我弄了半天終于把驗證這步通過了,記錄一下:
微信公眾號名稱:今天做了沒
微信公眾號:now-to-do
有興趣的可以加一下,雖然其實沒有什么功能呢。
我參考的是這些內(nèi)容:
開始記錄整個過程:
第一步:申請SAE的賬號,具體的就不說了,反正是申請好了我,挺簡單的。然后創(chuàng)建一個代碼版本,
創(chuàng)建完了,可以在網(wǎng)頁上直接寫代碼,寫可以在電腦上安裝一個SVN,在本地寫,然后提交到服務(wù)器上,
我是采用的本地寫的方法。這里其實也挺煩的,我也不是一下子就弄好了的,不過耐心弄一下還是挺容易的。
第二步:開始在代碼中添加?xùn)|西,讓微信驗證的時候可以通過。
先大概看一下:
原本這里面是有兩個文件的:config.yaml? 和? index.wsgi
在config.yaml中添加要使用的擴展包,就像圖中所示:
在這里我當(dāng)時遇到了問題,寫好了,保存就是不成功,直接在網(wǎng)頁上編輯,然后保存,再打開就沒有保存上,
使用SVN提交也遇到了問題,提交不成功,我看了一下大概是說syntax error,語法有問題,然后仔細看了一下
就是name前面有一個 - 這個小橫我沒有寫,當(dāng)時看他們的示例我以為那個是他們編輯器的標(biāo)識呢,后來寫上了就好了。
這里version前面是兩個空格。
然后就是index.wsgi了,這個里原來是有代碼的,不過我都刪除了,原來你如果使用這個地址去訪問,是可以看到
Hello SAE這個輸出的在網(wǎng)頁上,但是刪除后,改成這樣,你再使用網(wǎng)頁訪問,是會說服務(wù)器上有程序錯誤的。不過
這個沒有關(guān)系,我們不是要做一個web,而是要讓它當(dāng)公眾號的服務(wù)器用。
上面nowtodoInterface是我又創(chuàng)建的一個nowtodoInterface.py的文件,里面有一個類NowtodoInterface。
urls括號中的東西,第一個就相當(dāng)于路徑名,我這個文件是直接創(chuàng)建在/下的,沒有創(chuàng)建子目錄,如果你要是創(chuàng)建了
子目錄來放這個文件,比如子目錄叫:subDir這個 / 就要寫成/subDir了,而后面的NowtodoInterface就是那個類的名。
再下面的一堆東西,我其實不知道是什么,只是他們這么寫,我也這么寫的,等知道了,再回來補充上。
然后就是我的nowtodoInterface.py了
在這里,就是那個token是自己定義的,這個要和一會在微信公眾平臺上填寫的token一致就行。
signature?? timestamp?? nonce?? echostr?? 這三個是微信公眾平臺連你這,給你發(fā)的東西,用于驗證,
sha1是一種驗證方法,拿token timestamp? nonce一起計算出來,和發(fā)給你的signature比較,這個signature就是
微信那邊這樣算出來的,你們算的一樣,就對了,對了就把它給你的那個echostr再發(fā)回去就可以了。不對,就驗證失敗了。
這里這個驗證其實不用也一樣,微信那邊就基于你有沒有返回這個echostr來決定是否成功的,所以代碼寫成這樣也是
可以的
def?GET(self):
data?=?web.input()
echostr?=?data.echostr
return?echostr
這樣就是直接得到發(fā)過來的echostr,然后再發(fā)回去,就能通過了。
標(biāo)簽:
總結(jié)
以上是生活随笔為你收集整理的python接入微信公众号_Python学习之微信公众号接入 一 验证的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: update 和 left join 合
- 下一篇: websocket python爬虫_p