国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

微信公眾號(hào)開(kāi)發(fā)小記——5.python微信紅包

JerryZou / 2795人閱讀

摘要:微信各個(gè)服務(wù)是獨(dú)立的,比較蛋疼,要用紅包功能,首先你需要注冊(cè)一個(gè)微信商戶(hù)平臺(tái)賬號(hào)。首先是微信證書(shū),用的是,與這兩個(gè)。寫(xiě)在最后微信開(kāi)發(fā)者工具挺好用的,服務(wù)號(hào)里把自己加為開(kāi)發(fā)者就能用了。

描述

有時(shí)候產(chǎn)品有這么一些需求,當(dāng)用戶(hù)滿(mǎn)足一定條件時(shí),給他發(fā)一定金額的紅包。

微信各個(gè)服務(wù)是獨(dú)立的,比較蛋疼,要用紅包功能,首先你需要注冊(cè)一個(gè)微信商戶(hù)平臺(tái)賬號(hào)。

代碼位置 分支pay-20160802

微信支付比較煩,因?yàn)樗凶约旱募用芊绞剑€要用證書(shū),所以不能用之前sdk的東西,自己隨便按照文檔封了下加密以及api之類(lèi)的算法,代碼什么的很簡(jiǎn)單,跟著文檔來(lái)好了。

一些需要介紹的東西

接入時(shí)最蛋疼的其實(shí)是剛?cè)胧植恢雷C書(shū)以及秘鑰什么的有啥用,也沒(méi)看到什么python的前輩仔細(xì)介紹過(guò)這些東西。

首先是微信證書(shū),python用的是apiclient_cert.pem,與apiclient_key.pem這兩個(gè)。

其次是加密時(shí)用得api秘鑰,文檔

代碼講解

配置

WEIXIN_PAY_CERT_FOLDER_PATH = "cert_folder_path" # 證書(shū)文件夾路徑
# 四個(gè)證書(shū)具體路徑
WEIXIN_PAY_P12_CERT_PATH = "apiclient_cert.p12_file_path"
WEIXIN_PAY_CERT_PATH = "apiclient_cert.pem_file_path"
WEIXIN_PAY_CERT_KEY_PATH = "apiclient_key.pem_file_path"
WEIXIN_PAY_CA_CERT_PATH = "rootca.pem_file_path"
WEIXIN_PAY_API_KEY = "" # 微信商戶(hù)平臺(tái)api安全中設(shè)置的安全碼
WEINXIN_PAY_MCH_ID = "" # 微信商戶(hù)平臺(tái)id

具體發(fā)紅包的代碼 pay.py

加密發(fā)紅包沒(méi)什么好說(shuō)的,照著文檔寫(xiě)就是了,就下面這一句,requests請(qǐng)求是可以帶證書(shū)的,把微信要的證書(shū)給帶上。

respose = requests.post(SENDREDPACK_URL, data=content, headers=headers,
            cert=(settings.WEIXIN_PAY_CERT_PATH, settings.WEIXIN_PAY_CERT_KEY_PATH))

models.py

血坑!!!解決方案請(qǐng)自行考慮

由于是血坑,我已經(jīng)踩進(jìn)去了,所以這里用一級(jí)標(biāo)題標(biāo)識(shí)。

并發(fā)啊,高并發(fā)啊,中國(guó)人知道發(fā)錢(qián)這種事情都是瘋子啊,當(dāng)你丟出一個(gè)發(fā)錢(qián)的鏈接后,就會(huì)有人用fiddler,charles之類(lèi)的抓包然后干你,數(shù)據(jù)庫(kù)太太太慢了,你一定要做好api的調(diào)用頻次限制,而且這種活動(dòng)上線(xiàn)后最好把跟主服務(wù)的幾臺(tái)機(jī)器分開(kāi),nginx只把這個(gè)活動(dòng)的東西代過(guò)來(lái),頻次限制之類(lèi)的一定要用redis之類(lèi)的緩存,而且微信會(huì)面臨紅包的各種failed狀況,無(wú)論微信那邊成功失敗與否,一次請(qǐng)求就是一次請(qǐng)求,頻次限制無(wú)視微信那邊的返回都要限(不要說(shuō)用戶(hù)體驗(yàn)不好,服務(wù)器炸了一天的飄過(guò),當(dāng)整個(gè)服務(wù)器炸了之后誰(shuí)還管體驗(yàn))。

寫(xiě)在最后

微信web開(kāi)發(fā)者工具挺好用的,服務(wù)號(hào)里把自己加為開(kāi)發(fā)者就能用了。

一個(gè)nginx例子

例如,我已經(jīng)有一個(gè)web服務(wù),假設(shè)web的名字叫做 www.duoduo369.com,這時(shí)候80端口已經(jīng)沒(méi)了,但是我要接微信服務(wù)器,又沒(méi)有另外的一臺(tái)機(jī)器,這時(shí)候用nginx做一下就ok了,首先django加一個(gè)url,/weixin_server,創(chuàng)建一個(gè)二級(jí)域名例如weixin.duoduo369.com,然后nginx把weixin.duoduo369.com的所有請(qǐng)求代到 www.duoduo369.com/weixin_server即可。

upstream your-backend {
    server 127.0.0.1:8000 fail_timeout=0;
}

server {
  server_name weixin.yourdomain.com yourdomain.ittun.com;
  location / {
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://your-backend/weixin_server;
  }
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/38082.html

相關(guān)文章

  • 微信公眾號(hào)開(kāi)發(fā)小記——1.接入微信服務(wù)器

    摘要:描述由于馬上要做一波公眾號(hào)開(kāi)發(fā),今天先調(diào)研,把基本的服務(wù)器接起來(lái)。手腳架地址文檔微信公眾號(hào)公眾號(hào)開(kāi)發(fā)首先你要有個(gè)公眾號(hào),這里就不說(shuō)了按照流程申請(qǐng)。腳手架的說(shuō)明微信公眾號(hào)接入的時(shí)候要做很多事情,為了簡(jiǎn)化開(kāi)發(fā),提供一個(gè)版本的服務(wù)器。 描述 由于馬上要做一波公眾號(hào)開(kāi)發(fā),今天先調(diào)研,把基本的服務(wù)器接起來(lái)。微信公眾號(hào)服務(wù)器在接入的時(shí)候要做一些煩躁的事情,改配置的時(shí)候要進(jìn)行握手,api調(diào)用要做一些...

    sshe 評(píng)論0 收藏0
  • 淺析微信支付:商戶(hù)平臺(tái)開(kāi)通現(xiàn)金紅包、指定用戶(hù)發(fā)放、紅包記錄查詢(xún)

    摘要:本文是淺析微信支付系列文章的第十三篇,主要講解在如何開(kāi)通商戶(hù)平臺(tái)的紅包功能和為用戶(hù)發(fā)放紅包,以及查詢(xún)發(fā)送紅包記錄。操作路徑登錄微信支付商戶(hù)平臺(tái)產(chǎn)品中心現(xiàn)金紅包開(kāi)通。 本文是【淺析微信支付】系列文章的第十三篇,主要講解在如何開(kāi)通商戶(hù)平臺(tái)的紅包功能和為用戶(hù)發(fā)放紅包,以及查詢(xún)發(fā)送紅包記錄。 淺析微信支付系列已經(jīng)更新十三篇了喲~,沒(méi)有看過(guò)的朋友們可以看一下哦。 淺析微信支付:(余額提現(xiàn))企業(yè)...

    fizz 評(píng)論0 收藏0
  • 淺析微信支付:開(kāi)發(fā)前的準(zhǔn)備

    摘要:本文是淺析微信支付系列文章的第三篇,主要會(huì)講一下在開(kāi)發(fā)前的一些注意事項(xiàng)。淺析微信支付系列已經(jīng)更新兩篇了喲,沒(méi)有看過(guò)的朋友們可以看一下。開(kāi)通微信支付需要注冊(cè)登陸微信商戶(hù)平臺(tái),微信支付相關(guān)的信息都需要在這個(gè)平臺(tái)上進(jìn)行操作。 本文是【淺析微信支付】系列文章的第三篇,主要會(huì)講一下在開(kāi)發(fā)前的一些注意事項(xiàng)。 淺析微信支付系列已經(jīng)更新兩篇了喲~,沒(méi)有看過(guò)的朋友們可以看一下。 淺析微信支付:前篇大綱...

    yanest 評(píng)論0 收藏0
  • 微信公眾號(hào)開(kāi)發(fā)小記——3.接入三方登錄

    摘要:我接觸已經(jīng)很久了,其中微信的就是我貢獻(xiàn)的代碼,然而當(dāng)時(shí)做的時(shí)候比較年輕,而且這個(gè)項(xiàng)目處于一個(gè)很大的代碼重構(gòu)中,借這次機(jī)會(huì)重新用正確的姿勢(shì)接入了一下三方登錄,可以當(dāng)做一個(gè)學(xué)習(xí)接入三方的。 為什么要接入三方登錄 如果你的微信服務(wù)器要做復(fù)雜的邏輯,比如html5、給用戶(hù)提供高級(jí)的服務(wù),并且有很好看的頁(yè)面等等,這種時(shí)候你就需要一個(gè)正常的web服務(wù)器,用戶(hù)打通就需要做三方登錄了。 而如果你決定直...

    aisuhua 評(píng)論0 收藏0
  • 微信公眾號(hào)開(kāi)發(fā)小記——2.80端口上的服務(wù)

    摘要:微信在做一些操作是需要用到生成二維碼等而每天接口的調(diào)用上限為,需要自己做緩存文檔講了幾種方式,我覺(jué)得放在中拿比較妥當(dāng)。微信菜單會(huì)緩存分鐘,你可以取消關(guān)注,然后在關(guān)注查看菜單變化效果。 描述 微信公眾號(hào)開(kāi)發(fā)基本分為2大種類(lèi)型 1.用戶(hù)直接做了某些操作(回復(fù)信息、訂閱、掃碼、發(fā)語(yǔ)音、點(diǎn)按鈕等),此時(shí)這些信息微信會(huì)發(fā)送到微信服務(wù)器的80端口,這是一種開(kāi)發(fā)類(lèi)型;2.通過(guò)連接(按鈕、文章)引導(dǎo)用...

    frank_fun 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<