亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
1、微信企業(yè)號的註冊和登陸
2、設定開發(fā)回調(diào)模式
3、實現(xiàn)回調(diào)頁面的功能開發(fā)
首頁 微信小程式 微信開發(fā) C#開發(fā)微信入口網(wǎng)站及應用程式-微信企業(yè)號的設定與使用

C#開發(fā)微信入口網(wǎng)站及應用程式-微信企業(yè)號的設定與使用

Feb 17, 2017 pm 03:36 PM

?在本系列隨筆的前面,主要就是介紹微信公眾號的門戶應用開發(fā),最近把整個微信框架進行了擴展補充,增加了最新的企業(yè)號的API封裝和開發(fā),後續(xù)主要介紹如何利用C#進行微信企業(yè)號的開發(fā)工作,本篇作為微信企業(yè)號的開發(fā)的起步篇,介紹微信企業(yè)號的配置和使用。

1、微信企業(yè)號的註冊和登陸

企業(yè)號是繼公眾號、訂閱號的另外一種微信類型,它主要是面對企業(yè)的。企業(yè)號是微信為企業(yè)客戶提供的行動應用入口??梢詭椭髽I(yè)建立員工、上下游供應鏈與企業(yè) IT 系統(tǒng)間的連結。利用 企業(yè)號 ,企業(yè)或第三方合作夥伴可以幫助企業(yè)快速、低成本的實現(xiàn)高品質(zhì)的行動輕應用,實現(xiàn)生產(chǎn)、管理、協(xié)作、營運的 行動化 。

個人覺得企業(yè)號最大的亮點是可以不限數(shù)量的消息發(fā)送,也就是可以在企業(yè)員工之間暢通交流。相對於公眾號和訂閱號,發(fā)送訊息的謹慎程度,微信企業(yè)號可謂給人眼前一亮的感覺。不過微信企業(yè)號是需要內(nèi)部建立好通訊錄,關注者需要匹配通訊錄的微信號、郵箱、電話號碼任一個通過才可以關注,也就是可以防止其他外來人員的自由關注了,另外如果為了安全考慮,還可以設定二次驗證,也就是一個審核過程。

企業(yè)號的認證和公眾號一樣,需要提供相關的企業(yè)資質(zhì)文件,並且認證每年都要收取費用,否則可能有人員和功能的一些限制。覺得微信真是想著方法賺錢,目前已有的收費模式有,訂閱號碼、公眾號、企業(yè)號、開放平臺,好像都有認證收費的了,而且微信小店也還需要收2萬的押金,一切都是錢呀。

好了,其他不多說,微信的註冊地址是:https://qy.weixin.qq.com,一個郵箱不能同時註冊微信公眾號和微信企業(yè)號。

對於企業(yè)開通企業(yè)號並開始使用需要四步驟

1)?企業(yè)到微信官網(wǎng)(?http://qy.weixin.qq.com?)申請開通;

2)?開通後,企業(yè)在企業(yè)號管理後臺導入成員,發(fā)布二維碼;

3)?企業(yè)調(diào)用企業(yè)號?api?與企業(yè)自有系統(tǒng)對接開發(fā);

4)?員工關注,收到微信訊息,在微信中與企業(yè)交互

註冊好企業(yè)號,就可以透過微信掃一掃,掃描企業(yè)二維碼進行登錄了,掃描的時候,需要微信進行確認,才可以繼續(xù)輸入密碼進行登錄,操作界面如下所示(左邊是手機截圖,右邊是網(wǎng)頁截圖) 。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用 ?C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

登入後我們就可以看到對應的電腦端的管理介面了。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

2、設定開發(fā)回調(diào)模式

如果開發(fā)過微信公眾號,那麼我們就知道,如果需要在微信伺服器和網(wǎng)站伺服器之間建立連接關係,實現(xiàn)訊息的轉(zhuǎn)發(fā)和處理,那麼就應該設置一個回調(diào)模式,需要配置相關的參數(shù)。然後在自己?網(wǎng)站伺服器裡面建立一個處理微信伺服器訊息的入口。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用 ?

進入設定後,我們需要修改相關的URL、Token、EncodingAESKey等參數(shù),主要是URL,這個就是和公眾號的入口處理一樣的,需要我們發(fā)佈到網(wǎng)站伺服器上的處理入口。

Token和AESKey可以根據(jù)提示動態(tài)產(chǎn)生一個即可,AESKey好像必須是23位的,所以這個一般是讓它自己產(chǎn)生的,這個主要用來加密解密使用的。

URL、Token、EncodingAESKey三個參數(shù)說明。

1)URL是企業(yè)應用程式接收企業(yè)號推播請求的存取協(xié)定和位址,支援http或https協(xié)定。

2)Token可由企業(yè)任意填寫,用於產(chǎn)生簽名。

3)EncodingAESKey用於訊息體的加密,是AES金鑰的Base64編碼。

驗證URL、Token以及加密的詳細處理請參考後續(xù) “接收訊息時的加解密處理” 的部分。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

我公司的企業(yè)號配置後的介面如下圖所示。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

?這個URL裡面指向的頁面功能,需要對資料進行解析並傳回給微信伺服器,因此我們需要在伺服器上預先部署好這個處理功能入口。

除了上面的幾個函數(shù),還有一個CorpID的參數(shù)需要使用,我們可以在後臺主介面-設定裡面查看到。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

然後我們?yōu)榱朔奖憔W(wǎng)站後臺使用,我們和公眾號的配置一樣,把它放到了Web.Config裡面,如下所示。

C#開發(fā)微信門戶及應用-微信企業(yè)號的配置和使用

3、實現(xiàn)回調(diào)頁面的功能開發(fā)

前面介紹了幾個配置項,需要在回調(diào)頁裡面使用的,本小節(jié)繼續(xù)介紹如何實現(xiàn)企業(yè)號資訊的回發(fā),使之通過回調(diào)測試的操作。

由於回調(diào)測試的資料是透過Get方式發(fā)送的,因此我們的處理邏輯程式碼如下所示,和公眾號的類似處理,只是實現(xiàn)部分不太一樣而已。

????///?<summary>
????///?企業(yè)號回調(diào)信息接口。統(tǒng)一接收并處理信息的入口。????///?</summary>
????public?class?corpapi?:?IHttpHandler
????{????????///?<summary>
????????///?處理企業(yè)號的信息????????///?</summary>
????????///?<param name="context"></param>
????????public?void?ProcessRequest(HttpContext?context)
????????{????????????string?postString?=?string.Empty;????????????if?(HttpContext.Current.Request.HttpMethod.ToUpper()?==?"POST")
????????????{????????????????using?(Stream?stream?=?HttpContext.Current.Request.InputStream)
????????????????{
????????????????????Byte[]?postBytes?=?new?Byte[stream.Length];
????????????????????stream.Read(postBytes,?0,?(Int32)stream.Length);
????????????????????postString?=?Encoding.UTF8.GetString(postBytes);
????????????????}????????????????if?(!string.IsNullOrEmpty(postString))
????????????????{
????????????????????Execute(postString);
????????????????}
????????????}????????????else
????????????{????????????????Auth();
????????????}
????????}????????///?<summary>
????????///?成為開發(fā)者的第一步,驗證并相應服務器的數(shù)據(jù)????????///?</summary>
????????private?void?Auth()
????????{????????????#region?獲取關鍵參數(shù)????????????string?token?=?ConfigurationManager.AppSettings["CorpToken"];//從配置文件獲取Token
????????????if?(string.IsNullOrEmpty(token))
????????????{
????????????????LogTextHelper.Error(string.Format("CorpToken?配置項沒有配置!"));
????????????}????????????string?encodingAESKey?=?ConfigurationManager.AppSettings["EncodingAESKey"];//從配置文件獲取EncodingAESKey
????????????if?(string.IsNullOrEmpty(encodingAESKey))
????????????{
????????????????LogTextHelper.Error(string.Format("EncodingAESKey?配置項沒有配置!"));
????????????}????????????string?corpId?=?ConfigurationManager.AppSettings["CorpId"];//從配置文件獲取corpId
????????????if?(string.IsNullOrEmpty(corpId))
????????????{
????????????????LogTextHelper.Error(string.Format("CorpId?配置項沒有配置!"));
????????????}?
????????????#endregion

????????????string?echoString?=?HttpContext.Current.Request.QueryString["echoStr"];????????????string?signature?=?HttpContext.Current.Request.QueryString["msg_signature"];//企業(yè)號的?msg_signature
????????????string?timestamp?=?HttpContext.Current.Request.QueryString["timestamp"];????????????string?nonce?=?HttpContext.Current.Request.QueryString["nonce"];????????????string?decryptEchoString?=?"";????????????if?(new?CorpBasicApi().CheckSignature(token,?signature,?timestamp,?nonce,?corpId,?encodingAESKey,?echoString,?ref?decryptEchoString))
????????????{????????????????if?(!string.IsNullOrEmpty(decryptEchoString))
????????????????{
????????????????????HttpContext.Current.Response.Write(decryptEchoString);
????????????????????HttpContext.Current.Response.End();
????????????????}
????????????}
????????}

具體的處理代碼如下所示,裡面的一個加解密處理的類別是微信企業(yè)號附錄裡面提供的,我使用了C#版本的SDK而已。

????///?<summary>
????///?企業(yè)號基礎操作API實現(xiàn)????///?</summary>
????public?class?CorpBasicApi?:?ICorpBasicApi
????{????????///?<summary>
????????///?驗證企業(yè)號簽名????????///?</summary>
????????///?<param name="token">企業(yè)號配置的Token</param>
????????///?<param name="signature">簽名內(nèi)容</param>
????????///?<param name="timestamp">時間戳</param>
????????///?<param name="nonce">nonce參數(shù)</param>
????????///?<param name="corpId">企業(yè)號ID標識</param>
????????///?<param name="encodingAESKey">加密鍵</param>
????????///?<param name="echostr">內(nèi)容字符串</param>
????????///?<param name="retEchostr">返回的字符串</param>
????????///?<returns></returns>
????????public?bool?CheckSignature(string?token,?string?signature,?string?timestamp,?string?nonce,?string?corpId,?string?encodingAESKey,?string?echostr,?ref?string?retEchostr)
????????{
????????????WXBizMsgCrypt?wxcpt?=?new?WXBizMsgCrypt(token,?encodingAESKey,?corpId);????????????int?result?=?wxcpt.VerifyURL(signature,?timestamp,?nonce,?echostr,?ref?retEchostr);????????????if?(result?!=?0)
????????????{
????????????????LogTextHelper.Error("ERR:?VerifyURL?fail,?ret:?"?+?result);????????????????return?false;
????????????}????????????return?true;????????????//ret==0表示驗證成功,retEchostr參數(shù)表示明文,用戶需要將retEchostr作為get請求的返回參數(shù),返回給企業(yè)號。????????????//?HttpUtils.SetResponse(retEchostr);
????????}

?更多C#開發(fā)微信入口網(wǎng)站及應用-微信企業(yè)號的設定與使用?相關文章請關注PHP中文網(wǎng)!


本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發(fā)現(xiàn)涉嫌抄襲或侵權的內(nèi)容,請聯(lián)絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72