1. 程式人生 > >淺談微信卡券功能開發(1)

淺談微信卡券功能開發(1)

閒扯

    由於公司的業務,有幸接觸到了微信平臺的開發,不得不感慨下,微信的業務規劃實在是巨集大的很呢。看來微信是想涉及生活的各個方面啊,再加上最近微信封殺各路豪傑(網易音樂、支付寶錢包)等,不難看出微信在產品規劃上的野心。

    貌似閒話說的太多了,接下來我就我自己對於微信卡券功能的開發經驗進行簡單的介紹,在微信開發的交流群中也看到很多新手開發者遇到的問題,希望本文能夠幫助剛接觸微信卡券的同學儘快的入門卡券功能開發,由於鄙人是NODEJS碼農,所以本文主要以NODEJS為開發語言,其他語言的開發者可以飄過~或者借鑑~~

    又一段閒話...(年紀大了,話嘮了),先簡單的介紹下微信卡券功能,卡券,說白了就是各種各樣的優惠券,會員卡,以及各種票據等等等等,涉及的方面很廣,就目前接觸到的開發者來看,大多數都是對於各類優惠券的開發,其他的種類比較少了。

    首先使用卡券功能,需要現在微信公眾號平臺中開啟卡券功能。具體的開啟步驟就不詳述了,文件裡面介紹的很詳細(對了,附下官方文件下載地址),下面開始聊一聊開發步驟。

準備

    微信提供了對於卡券的操作和管理介面,實質上就是向各個介面傳送請求,最簡單的,你都可以在html種建立個表單,然後填寫介面需要的資料,然後POST或者GET到微信的介面地址就可以了。但是,通常我們不會這樣做,因為我們的業務中可能有很多需求是微信介面無法滿足的,有些資訊是需要我們自己管理的。

    在開發中,我們藉助到了一個NodeJS的module,當然,大家也可以直接使用nodejs的request傳送請求,但是畢竟有好多需要注意的東西,module會幫我們考慮到,我在下文也會將需要注意的地方進行說明,以便其他語言開發能夠注意到。

Access Token

    首先我們先通過npm安裝一個module。不想使用module的同學自行略過本步驟。

    Module為 wechat-card, 可以到github上檢視其相關文件,遺憾的是,這個module目前僅支援大多數的優惠券和紅包,對於會員卡還有其他的門票類卡券並不支援。相信之後的版本應該會完善的,好在這些型別已經可以滿足基本使用了。

1 npm install wechat-card --save

    ok, 完整完成後要進行一個全域性的設定。

1 2 3 4 5 6 var wxCard = require("wechat-card"); wxCard.setConfig({ appId: "wxXXXXXXX", appSecret: "bulabulabulabula" });

    這裡有東西要進行說明:首先這裡有兩個量說明下,appId和appSecret,這兩個量可以在微信MP平臺的開發者中心中得到,他們兩個雖然只是路人,但是,他們兩個會創造出一個結晶,叫做access_token,這個可是一個非常重要的而且脾氣古怪的小朋友了。說他重要,因為他貫穿整個介面,不僅僅是卡券會用到,所以微信平臺的介面都可能會使用到他;說他脾氣古怪,是因為他有個特別的屬性,7200秒(2小時)會過期,而且每天只能請求2000次。那麼,這就要求我們要去管理access_token的生成,定時去重新整理他。如果使用上述的NODEJS MODULE的話,只需要在setConfig中配置appId和appSecret,Module就會自動為我們管理Token了。

    題外話,如果我們的產品中不僅僅用到了微信卡券功能,還使用到了其他的微信功能,而這些功能中也用到了access token,那麼這時候就不可以將token交由某個功能區管理了,因為當一邊重新整理access  token以後,另一邊的就會失效,針對這種情況,我們應該有一個服務來為各個功能提供access token,那麼這裡不可以配置appId和appSecret了,Module提供了另外一個配置:

1 2 3 wxCard.setConfig({ });

    這裡通過配置一個公開的服務來獲取access token,需要注意的是,這裡的2小時過期,以及請求次數都需要這個服務自行去管理了。

建立門店

    我們在建立卡券之前,需要先建立門店。這裡我們先解釋下,門店,其實就是實際商戶下的店面,舉個栗子,肯德基就是一個商戶,那麼肯德基北京西站店就是一個門店,我們的卡券會有一個”適用門店“的選項需要對應各個門店。所以我們需要先建立各個門店以備適用。

    檢視官方文件我們可以瞭解到一個建立門店的介面:

1 https://api.weixin.qq.com/card/location/batchadd?access_token=TOKEN

    前面我們介紹了獲取access token的方法,這裡我們可以看到token的用途,在請求每一個介面時都需要附帶token。我們可以直接向介面傳送請求來完成操作。這裡我們使用Module來進行建立門店:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

相關推薦

功能開發1

閒扯     由於公司的業務,有幸接觸到了微信平臺的開發,不得不感慨下,微信的業務規劃實在是巨集大的很呢。看來微信是想涉及生活的各個方面啊,再加上最近微信封殺各路豪傑(網易音樂、支付寶錢包)等,不難看出微信在產品規劃上的野心。     貌似閒話說的太多了,

添加擎系統

time_t mode del time reat 系統 auto sta load() load()->model(‘coupon‘);load()->classs(‘coupon‘);load()->classs(‘coupon_auto‘);

NIO原理剖析與Netty初步----高性能服務器開發

返回 創建 基於 register 訪問 io操作 nbsp info class 除特別註明外,本站所有文章均為原創,轉載請註明地址 在博主不長的工作經歷中,NIO用的並不多,由於使用原生的Java NIO編程的復雜性,大多數時候我們會選擇Netty,m

小程序的開發

ram tle ati java ndt 喜歡 top lex navig 我現在在學習,微信小程序開發,剛剛看看一篇對我特別有用的博客文章,我就把摘抄過來了,好好的學習一下。 序言 開始開發應用號之前,先看看官方公布的「小程序」教程吧!(以下內容來自微信官方公布的「小程序

小程式-雲開發手記

 微信小程式-雲開發(手記)  1、建立data.json檔案   注意以下幾點要求:   入門示例: init方法的env:預設環境配置,傳入字串形式的環境 ID(理解為資料庫)可以指定所有服務的預設環境(意思就是全域性使用一個數據庫),傳入物件可

小程式雲開發資料庫

開發者可以使用雲開發開發微信小程式、小遊戲,無需搭建伺服器,即可使用雲端能力。 雲開發為開發者提供完整的雲端支援,弱化後端和運維概念,無需搭建伺服器,使用平臺提供的 API 進行核心業務開發,即可實現快速上線和迭代,同時這一能力,同開發者已經使用的雲服務相互相容,並不互斥。

公眾號平臺開發:幾大介面的呼叫

文章結構 1、怎麼呼叫微信高階介面 2、呼叫微信高階幾大例項 2.1、呼叫自定義選單介面 2.2、客服介面 2.3、生成二維碼 3、獲取非微信功能介面,如天氣網的天氣介面、股票網站的資訊介面。 怎麼呼叫微信高階介

結合百度雲平臺和公眾平臺進行開發

    套話大話我就不說了,網上一大堆,我們就直接進入正題吧,相信對百度雲平臺和微信公眾平臺沒有了解的也不會關注這篇文章。 上面的標題到底是個什麼意思呢?下面讓我們一步一步來完成一個測試小專案。 兩者是怎樣結合的? 利用百度雲平臺執行我們自己的服務端專案,在平臺上線執行。利

對Js面向物件的理解1

    面向物件的語言有一個標誌,那就是它們都有類的概念,通過類來建立任意多個具有相同屬性和方法的物件。它是一種程式開發的方法,它將物件作為程式的基本單元,將邏輯和資料封裝其中,以提高程式碼的靈活性、重用性和擴充套件性。物件是把資料及對資料的操作方法放在一起,作為一個相互依存的整體。簡單的

小程式上手篇1

  昨天微信公佈了小程式,可以說舉國轟動,不光是微信前期推廣做得好,更是因為小程式有著不小的吸引力,筆者仔細體驗了一下小程式示例,可以說體驗不錯。當然,這篇博文並不是為了說明小程式多好多好的推薦文,我們今天主要是來講如何進行學習開發的。   這篇博文主要適用於有開發經驗的開

小程式踩坑1:wx.showModal模態對話方塊中content換行

問題:wx.showModal 對話方塊內容不能換行? 如上圖所示,模態對話方塊中content是沒有換行的,但是我們需求中有需要換行提醒的業務,那怎麼辦呢?官方API中並沒有告訴我們怎麼做! 解決方案:使用“\r\n”換行 原始碼 wx.showModal({

小程式的檔案結構 —— 小程式教程系列1

檔案結構 示例目錄:HelloWorld 全域性檔案 app.js檔案 這個是小程式的指令碼程式碼檔案,可以在這個檔案上進行監聽,並處理小程式的一些生命週期(比如一些全域性

小程式學習筆記1

首先,註冊帳號 這裡指的是微信公眾平臺的註冊帳號,不是微信App賬號。 訪問https://mp.weixin.qq.com/,如果沒有帳號,輸入郵箱,註冊一個。註冊過程中會讓你從四個類別(微信訂閱號、服務號、企業微信、小程式)中選擇一個,選擇“小程式"就好了。 後續輸

小程式-人臉識別1照片入庫

現在我們的科技是越來越發達了,我們現在有的手機有一個功能就是刷臉登入,那這是什麼原理呢?那就是人臉識別。首先你要把你的照片(包括整張人臉)傳給伺服器,他將你的照片傳入到資料庫當中。在你要登入的時候,將你刷臉是的照片與傳入伺服器資料庫裡面的照片進行對比,從而實現刷臉登入。下面是

iOS新浪部落格戶端開發1——新特性介面

轉載自:http://blog.csdn.net/chy305chy/article/details/43118361 看完了MJ老師的微博專案視訊,準備自己動手寫一下,記錄開發中的一些感想。 1、首先判斷是否第一次使用該版本,如果是,先跳轉到新特性介面,否則,直接跳

最近i學習中的會員卡功能,弄清楚不容易 ,分享一下。

jsb 優惠 服務員 can inf 分享 PQ tle 功能 創建會員卡接口 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1451025283 【4.1 創建會員卡接口】 { "card":

酷客多小程序新版發布:與、小票打印等無縫對接

微信小程序 酷客多小程序 酷客多小程序商城系統更新了!酷客多小程序商城系統更新了!酷客多小程序商城系統更新了!重要的事情說3遍!這一次我們對原有版本做了全方位體驗優化,從UI UE等方面對商家後臺進行了體驗式改善,使商家後臺變得更加美觀和易用。除此之外,還推出了“微信優惠券”和“小票打印”兩個重要功能

領用

timestamp 和數 微信 weixin res ali body lis 統計 客戶對系統中的微信卡券很不滿意,說是一次不能領取多張,而且不能控制領取的次數。 看到微信官方的demo http://203.195.235.76/jssdk/ 最後是長這樣

jssdk分享功能開發

獲取地理位置 開放平臺 ont 1.3 千萬 sage hide ict gbk 先理解下分享:    在app端 ,經常能看見 分享按鈕的功能,(分享給朋友,分享到朋友圈,分享到QQ空間等等); https://open.weixin.qq.com/(微信開發平臺),這需

---建立卡---上傳圖片logo

微信卡券—建立卡券—上傳圖片logo 本博文主要向大家介紹一下微信卡券 — 圖片logo 的功能介面對接。 使用語言: PHP 注意點:絕對路徑、檔案引流格式 $url = "https://api.weixin.qq.com/cgi-bi