企業微信對接開發流程

目錄
  1. 企業微信如何收費?
  2. 如何申請企業微信,創建企業內部應用?
  3. 企業微信OAuth2接入流程
  4. 關於網頁授權的可信域名
  5. 如何調用企業微信API?

企業微信如何收費?

微信微信是免費申請的,不收取任何費用。若企業人數超過200人,需要進入企業微信後臺的認證系統進行認證,操作如下:
在這裏插入圖片描述
認證費用是300元,認證成功後的企業需要年審,費用是300元/年。

如何申請企業微信,創建企業內部應用?

1.首先,到企業微信官網進行賬號註冊。在這裏插入圖片描述
2.註冊成功後,進入管理員後臺。

在這裏插入圖片描述

3.需要導入通訊錄,同步後臺通訊錄。

在這裏插入圖片描述

4.創建應用,點擊應用管理->創建應用,填寫相應的信息,方可創建。

在這裏插入圖片描述

5. 點擊創建的應用,設置可信度域名。

在這裏插入圖片描述
例如:確認無誤後點擊確定。
在這裏插入圖片描述

6.設置工作應用臺主頁

在這裏插入圖片描述
說明:
如果企業需要在打開的網頁裏面攜帶用戶的身份信息,第一步需要構造如下的鏈接來獲取code參數:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

appid在我的企業>企業信息 企業ID 可以看到

在這裏插入圖片描述
員工點擊後,頁面將跳轉至 redirect_uri?code=CODE&state=STATE,企業可根據code參數獲得員工的userid。code長度最大爲512字節。

至此,創建一個應用的流程差不多結束。記得設置應用的可見範圍。

企業微信OAuth2接入流程

詳情可參考:企業微信開發之授權登錄
流程爲:
A) 用戶訪問第三方服務,第三方服務通過構造OAuth2鏈接(參數包括當前第三方服務的身份ID,以及重定向URI),將用戶引導到認證服務器的授權頁
B) 用戶選擇是否同意授權
C) 若用戶同意授權,則認證服務器將用戶重向到第一步指定的重定向URI,同時附上一個授權碼。
D) 第三方服務收到授權碼,帶上授權碼來源的重定向URI,向認證服務器申請憑證。
E) 認證服務器檢查授權碼和重定向URI的有效性,通過後頒發AccessToken(調用憑證)
在這裏插入圖片描述

關於網頁授權的可信域名

REDIRECT_URL中的域名,需要先配置至應用的“可信域名”,否則跳轉時會提示“redirect_uri參數錯誤”。
要求配置的可信域名,必須與訪問鏈接的域名完全一致。舉個例子:
在這裏插入圖片描述

如何調用企業微信API?

1.引入js文件

方法一:在需要調用JS接口的頁面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.2.0.js
方法二:支持使用 AMD/CMD 標準模塊加載方法加載(以vue爲例)

$ npm install weixin-js-sdk --save
或
$ yarn add weixin-js-sdk --save
2.通過config接口注入權限驗證配置

所有需要使用JS-SDK的頁面必須先注入配置信息,否則將無法調用(同一個url僅需調用一次,對於變化url的SPA的web app可在每次url變化時進行調用)。

wx.config({
    beta: true,// 必須這麼寫,否則wx.invoke調用形式的jsapi會有問題
    debug: true, // 開啓調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時纔會打印。
    appId: '', // 必填,企業微信的corpID
    timestamp: , // 必填,生成簽名的時間戳
    nonceStr: '', // 必填,生成簽名的隨機串
    signature: '',// 必填,簽名,見附錄1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
});

而signature的如何生成可參考官網API,出於安全考慮,開發者必須在服務器端實現簽名的邏輯(即後端給出接口)。
任意門

3.通過ready接口處理成功驗證
wx.ready(function(){
    // config信息驗證後會執行ready方法,所有接口調用都必須在config接口獲得結果之後,config是一個客戶端的異步操作,所以如果需要在頁面加載時就調用相關接口,則須把相關接口放在ready函數中調用來確保正確執行。對於用戶觸發時才調用的接口,則可以直接調用,不需要放在ready函數中。
});
4.通過error接口處理失敗驗證
wx.error(function(res){
    // config信息驗證失敗會執行error函數,如簽名過期導致驗證失敗,具體錯誤信息可以打開config的debug模式查看,也可以在返回的res參數中查看,對於SPA可以在這裏更新簽名。
});

驗證成功後,就可以調用微信API的其他接口了。
任意門

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章