C 開發微信門戶及應用 1 微信介面使用

2022-09-26 04:12:09 字數 3756 閱讀 1909

微信應用如火如荼,很多公司都希望搭上資訊快車,這個是乙個商機,也是乙個技術的方向,因此,有空研究下、學習下微信的相關開發,也就成為日常計畫的重要事情之一了。本系列文章希望從乙個循序漸進的角度上,全面介紹微信的相關開發過程和相關經驗總結,希望給大家了解一下相關的開發歷程。本隨筆主要針對微信開發過程的前期準備和一些初始的工作的介紹。

在寫下本文的之前一周時間裡,我主要就是參考一些介紹文章以及微信公眾平台的相關介面說明,並結合c#的**開發,整理了自己公司的門戶介面,實現了微信工作號的初步使用者互動和資訊展示工作,隨著工作的進一步開展,越來越多的功能可能加入,並希望從應用角度上擴充套件微信的介面,從而實現我對微信介面的技術探秘和了解過程。

1、微信賬號

要開發使用微信的平台api,就需要到微信的公眾平台(去註冊,擁有乙個服務號或者訂閱號,服務號主要面對企業和組織,訂閱號主要面向組織和個人,他們之間有一定的差異,根據不同的需要自己申請對應的賬號即可。

為了使用一些高階的介面,你可能需要擁有服務號和高階的認證。賬號註冊過程,需要**乙個申請**,列印並蓋公章,另外還需要申請人拿著身份證拍照(有點怪異,呵呵),然後上傳到伺服器進行審核,一般很快就能獲取批覆。

我以公司名義申請了www.cppcns.com服務號,賬號註冊後,會在主介面上顯示你的相關資訊,另外給你申請乙個***的東西,掃瞄***即可進入公司的微信關注確認對話方塊,非常方便。如下就是我申請後的公司賬號***,可以直接使用掃瞄。

2、微信選單定義

微信有兩種方式的選單定義,一種是編輯模式,一種是開發模式,兩者互斥,也就是說,一旦我們採用了開發模式,就不能使用編輯模式了,反過來也一樣。編輯下的選單,其實也是可以管理的,但是微信不支援,覺得很不爽。

一般情況下,如果我們剛剛申請了***碼,可以使用編輯選單測試一下,根據說明編輯一些選單試試。雖然微信說24小時內更新,不過一般很快,最快可能一兩分鐘就更新了,感覺還是不錯的。

使用開發者模式,你需要根據微信的要求,在伺服器上放置乙個頁面鏈結,使用c#開發的,可以採用***.ashx的命名方式,使用asp.net的一般處理程式即可,不需要使用普通的頁面。

使用開發模式的選單,也就是可以呼叫微信api進行選單建立的工作,對於呼叫微信的api(微信有很多api可以呼叫),我們需要知道,有幾個引數的重要性,所以在開發模式開啟的時候,會給你列出這些amcgd引數,如下所示。

3、接入微信的鏈結處理

上面說了,你申請開發模式對選單或者對其他api的呼叫,你需要順利通過接入微信的測試,也就是確認你填寫的鏈結存在並能順利經過微信的**測試。微信提供了乙個php的頁面處理例子,如果我們是c#開發的呢,可以搜一下就會得到答案,我的處理方式如下所示。

建立乙個一般處理程式,然後在其處理頁面裡面增加乙個處理邏輯,如果是非post方式的內容,就是表示微信進行的get測試,你需要增加一些處理邏輯,把它給你的內容傳回去即可,如果是post方式的,就是微信伺服器對介面訊息的請求操作了,後面介紹。

///

/// 微信介面。統一接收並處理資訊的入口。

}一般來說,auth函式裡面,就是要對相關的引數進行獲取,然後進行處理返回給微信伺服器。

string token = "****";//你申請的時候填寫的token

完整的author函式**如下所示,其中我把業務邏輯進行進一步抽取到了乙個新的類裡面,方便業務邏輯的管理。

///

/// 成為開發者的第一步,驗證並相應伺服器的資料

stri程式設計客棧ng signature = httpcontext.current.request.querystring["signature"];

而對微信引數程式設計客棧的簽名並返回的操作checksignature,**如下所示

///

/// 驗證微信簽名

///

public bool checksignature(string token, string signature, string timestamp, string nonce)

; array.sort(arrtmp);

string tmpstr = string.join("", arrtmp);

tmpstr = formsauthentication.hashpasswordforstoringinconfigfile(tmpstr, "sha1");

tmpstr = tmpstr.tolower();

if (amcgdtmpstr == signature)

else

}4、使用開發方式建立選單

一旦你順利通過微信的認證,那麼它就讓你以開發方式呼叫它的api,並且可以隨意建立你的選單了。

建立選單的方式,你可以通過下面的位置進入到他的api處理介面裡面。

進入後,你會發現微信把很多訊息的處理,分門別類放到不同的分類裡面了。

其實我們現在初步要做的就是如何看看,使用**方式呼叫建立選單,進入選單的api除錯介面裡面。

你會發現裡面還需要輸入乙個access_token的東西,這個是乙個會話身份認證,因此你還需要到介面裡面去找這個如何建立的。下面圖中的兩個紅色部分,就是我們開始的時候,微信提示我們「開發者憑據」的兩個關鍵引數。

弄完這些,你就可以根據獲得的access_token進行選單的建立工作了,根據選單的定義,它分為幾類,可以分為url方式(view),事件方式(click)。

click:使用者點選click型別按鈕後,微信伺服器會通過訊息介面推送訊息型別為event 的結構給開發者(參考訊息介面指南),並且帶上按鈕中開發者填寫的key值,開發者可以通過自定義的key值與使用者進行互動;

view:使用者點選view型別按鈕後,微信客戶端將會開啟開發者在按鈕中填寫的url值(即網頁鏈結),達到開啟網頁的目的,建議與網頁授權獲取使用者基本資訊介面結合,獲得使用者的登入個人資訊。

5、我建立的選單案例

在隨筆的開始,我公布了乙個***,一旦使用微信掃一掃,進行關注服務號後,那麼就可以看到我自己建立的選單了。主選單一般最多三列,每個主選單還可以有子選單,他們的文字都有所限制的。

我們來看看我公司的微信門戶選單,看起來是不是很酷呢。

本文標題: c#開發微信門戶及應用(1) 微信介面使用

本文位址:

C 開發微信門戶及應用 1 開始使用微信介面

string token 你申請的時候填寫的token 完整的author函式 如下所示,其中我把業務邏輯進行進一步抽取到了乙個新的類裡面,方便業務邏輯的管理。成為開發者的第一步,驗證並相應伺服器的資料 private void auth if new basicapi checksignature...

C MVC開發微信應用 1 開始使用微信介面

我以個人申請了乙個測試賬號,能用裡面的基本上所有的功能。在進入自己的訂閱號後裡面有乙個開發工具 之後可以申請乙個開發測試賬號 進入測試賬號如下 返回隨機字串則表示驗證通過 通用驗證方法 檢查簽名是否正確 accesstoken true check signature success public ...

微信介面開發

管理門戶採用springmvc mybatis,資料庫用的mysql 普通訂閱號沒有上傳 檔案許可權。自定義選單 controller public class menuservice else public menu getmenu else else else else mainbtn.sets...