日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信企业号开发之如何建立连接

發布時間:2023/12/4 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信企业号开发之如何建立连接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://www.07net01.com/2014/09/167991.html

連接將使你的企業號更具價值,你可以使用以下三種方式,連接你的企業號及企業應用:

1、企業應用調用企業號提供的接口,管理或查詢企業號后臺所管理的資源、或給成員發送消息等,以下稱主動調用模式。

2、企業號把用戶發送的消息或用戶觸發的事件推送給企業應用,由企業應用處理,以下稱回調模式。

3、用戶在微信中閱讀企業應用下發的H5頁面,該頁面可以調用微信提供的原生接口,使用微信開放的終端能力,以下稱JSAPI模式

通過這三種連接方式的結合,你可以在企業號中建立功能強大的移動輕應用,并依托微信數億活躍用戶,幫助企業方便、快捷地實現應用的部署,并確保應用的活躍度。

一、主動調用

1、簡述

主動調用是最基本的連接模式,當你的應用調用企業號時,需使用https協議、Json數據格式、UTF8編碼,訪問域名為https://qyapi.weixin.qq.com,數據包不需要加密。

在每次主動調用企業號接口時需要帶上AccessToken參數。AccessToken參數由CorpID和Secret換取。

CorpID是企業號的標識,每個企業號擁有一個唯一的CorpID;Secret是管理組憑證密鑰。

系統管理員可通過管理端的權限管理功能創建管理組,分配管理組對應用、通訊錄、接口的訪問權限。完成后,管理組即可獲得唯一的secret。系統管理員可通過權限管理查看所有管理組的secret,其他管理員可通過設置中的開發者憑據查看。

當企業應用調用企業號接口時,企業號后臺為根據此次訪問的AccessToken,校驗訪問的合法性以及所對應的管理組的管理權限以返回相應的結果。

注:你應該審慎配置管理組的權限,夠用即好,權限過大會增加誤操作可能性及信息安全隱患。

2、獲取AccessToken

AccessToken是企業號的全局唯一票據,調用接口時需攜帶AccessToken。

AccessToken需要用CorpID和Secret來換取,不同的Secret會返回不同的AccessToken。正 常情況下AccessToken有效期為7200秒,有效期內重復獲取返回相同結果,并自動續期。由于獲取access_token的api調用次數非常 有限,建議企業全局存儲與更新access_token,頻繁刷新access_token會導致api調用受限,影響自身業務

  • 請求說明

Https請求方式: GET

https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=id&corpsecret=secrect

  • 參數說明
參數 必須 說明
corpid 企業Id
corpsecret 管理組的憑證密鑰
  • 權限說明

每個secret代表了對應用、通訊錄、接口的不同權限;不同的管理組擁有不同的secret。

  • 返回說明

a)正確的Json返回結果:

{ "access_token": "accesstoken000001", } 參數 說明
access_token 獲取到的憑證

b)錯誤的Json返回示例:

{ "errcode": 43003, "errmsg": "require https" }

3、主動調用的頻率限制

當你獲取到AccessToken時,你的應用就可以成功調用企業號后臺所提供的各種接口以管理或訪問企業號后臺的資源或給企業號成員發消息。

為了防止企業應用的程序錯誤而引發企業號服務器負載異常,默認情況下,每個企業號調用接口都有一定的頻率限制,當超過此限制時,調用對應接口會收到相應錯誤碼。

以下是當前默認的頻率限制,企業號后臺可能會根據運營情況調整此閾值:

  • 基礎頻率

每企業調用單個cgi/api不可超過1000次/分,30000次/小時

每ip調用單個cgi/api不可超過2000次/分,60000次/小時

每ip獲取AccessToken不可超過300次/小時

  • 發消息頻率

每企業不可超過200次/分鐘;不可超過帳號上限數*30人次/天

  • 創建帳號頻率

每企業創建帳號數不可超過帳號上限數*3/月

內容導航

二、回調模式

在回調模式下,企業不僅可以主動調用企業號接口,還可以接收用戶的消息或事件。接收的信息使用XML數據格式、UTF8編碼,并以AES方式加密。

企業號的每個應用都有自己的回調模式開關。在管理端開啟并設置好相關參數后,此應用的回調模式才生效。

針對加解密的處理,微信提供了各種語言的庫,企業可以在附錄中下載。

1、開啟應用的回調模式

當你開啟應用的回調模式時,企業號會要求你填寫應用的URL、Token、EncodingAESKey三個參數。

URL是企業應用接收企業號推送請求的訪問協議和地址,支持http或https協議。

Token可由企業任意填寫,用于生成簽名。

EncodingAESKey用于消息體的加密,是AES密鑰的Base64編碼。

驗證URL、Token以及加密的詳細處理請參考后續’接收消息時的加解密處理’的部分。

驗證URL有效性

當你提交以上信息時,企業號將發送GET請求到填寫的URL上,GET請求攜帶四個參數,企業在獲取時需要做urldecode處理,否則會驗證不成功。

參數 描述 是否必帶
msg_signature 微信加密簽名,msg_signature結合了企業填寫的token、請求中的timestamp、nonce參數、加密的消息體
timestamp 時間戳
nonce 隨機數
echostr 加密的隨機字符串,以msg_encrypt格式提供。需要解密并返回echostr明文,解密后有random、msg_len、msg、$CorpID四個字段,其中msg即為echostr明文 首次校驗時必帶

企業通過參數msg_signature對請求進行校驗,如果確認此次GET請求來自企業號,那么企業應用對echostr參數解密并原樣返回echostr明文(不能加引號),則接入驗證生效,回調模式才能開啟。

后續回調企業時都會在請求URL中帶上以上參數(echostr除外),校驗方式與首次驗證URL一致。

2、使用回調模式

企業號在回調企業URL時,會對消息體本身做AES加密,以XML格式POST到企業應用的URL上;企業在被動回復時,也需要對數據加密,以XML格式返回給微信。企業的回復支持文本、圖片、語音、視頻、圖文等格式

微信服務器在五秒內收不到響應會斷掉連接,并且重新發起請求,總共重試三次。如果在調試中,發現員工無法收到響應的消息,可以檢查是否消息處理超時。

關于重試的消息排重,有msgid的消息推薦使用msgid排重。事件類型消息推薦使用FromUserName + CreateTime排重。

假如企業無法保證在五秒內處理并回復,可以直接回復空串,企業號不會對此作任何處理,并且不會發起重試。這種情況下,可以使用發消息接口進行異步回復。

假設企業回調URL為http://api.3dept.com。

  • 請求說明:

http://api.3dept.com/?msg_signature=ASDFQWEXZCVAQFASDFASDFSS&timestamp=13500001234&nonce=123412323

  • 回調數據格式:
<xml> <ToUserName><![CDATA[toUser]]</ToUserName> <AgentID><![CDATA[toAgentID]]</AgentID> <Encrypt><![CDATA[msg_encrypt]]</Encrypt> </xml> 1.msg_encrypt為經過加密的密文2.AgentID為接收的應用id,可在應用的設置頁面獲取3.ToUserName為企業號的CorpID

企業需要對msg_signature進行校驗,并解密msg_encrypt,得出msg的原文。

  • 回復給微信的數據格式:
<xml> <Encrypt><![CDATA[msg_encrypt]]></Encrypt> <MsgSignature><![CDATA[msg_signature]]></MsgSignature> <TimeStamp>timestamp</TimeStamp> <Nonce><![CDATA[nonce]]></Nonce> </xml>

3、接收消息時的加解密處理

企業可以直接使用微信提供的庫進行加解密的處理,目前提供的有c++/python/php/Java/c#等語言版本。代碼提供了解密、加密、驗 證URL三個接口,企業可根據自身需要下載(參見附錄)。以下為庫函數的使用說明(以c++為例),更詳細的加解密方案請參考附錄。

1)解密函數

int DecryptMsg(const string &sMsgSignature, const string &sTimeStamp, const string &sNonce, const string &sPostData, string &sMsg);
  • 參數說明
參數 必須 說明
sMsgSignature 從回調URL中獲取的msg_signature參數
sTimeStamp 從回調URL中獲取的timestamp參數
sNonce 從回調URL中獲取的nonce參數
sPostData 從回調URL中獲取的整個post數據
sMsg 用于返回解密后的msg,以xml組織
  • 返回說明

請參閱附錄加密部分。

2)加密函數

int EncryptMsg(const string &sReplyMsg, const string &sTimeStamp, const string &sNonce, string &sEncryptMsg);
  • 參數說明
參數 必須 說明
sReplyMsg 返回的消息體原文
sTimeStamp 時間戳,調用方生成
sNonce 隨機數,調用方生成
sEncryptMsg 用于返回的密文,以xml組織
  • 返回說明

請參閱附錄加密部分。

3)驗證URL函數

int VerifyURL(const string &sMsgSignature, const string &sTimeStamp, const string &sNonce, const string &sEchoStr, string &sReplyEchoStr);
  • 參數說明
參數 必須 說明
sMsgSignature 從回調URL中獲取的msg_signature參數
sTimeStamp 從回調URL中獲取的timestamp參數
sNonce 從回調URL中獲取的nonce參數
sEchoStr 從回調URL中獲取的echostr參數。注意,此參數必須是urldecode后的值
sReplyEchoStr 解密后的echostr,用于回包。注意,必須原樣返回,不要做加引號或其它處理
  • 返回說明

請參閱附錄加密部分。

內容導航

三、Weixin JS接口

Weixin JS接口是微信為你的H5應用提供開放原生能力的接口,你的應用可以利用這些接口使用更多的微信原生能力和微信的操控能力, 以使得你的應用有更強大的智能,更好的用戶體驗。

除了以下章節所描述的各類接口。拍照、上傳圖片、掃碼、微信支付、地理位置上報等更多的接口已經或正在抓緊開放中,更多信息也請參考微信相關網站了解.

1、隱藏微信中網頁右上角按鈕

企業號在有需要時(如不需要用戶分享某個頁面),可在網頁中通過javascript代碼隱藏網頁右上角按鈕。

  • 接口調用代碼(JavaScript)
function onBridgeReady(){ WeixinJSBridge.call('hideOptionMenu'); } if (typeof WeixinJSBridge == "undefined"){ if( document.addEventListener ){ document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); }else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } }else{ onBridgeReady(); }
  • 返回說明

隱藏底部導航欄沒有返回值。(需要顯示請把hideOptionMenu換成showOptionMenu)

2、隱藏微信中網頁底部導航欄

企業號在有需要時(如認為用戶在該頁面不會用到瀏覽器前進后退功能),可在網頁中通過JavaScript代碼隱藏網頁底部導航欄。

  • 接口調用代碼(JavaScript)
function onBridgeReady(){ WeixinJSBridge.call('hideToolbar'); } if (typeof WeixinJSBridge == "undefined"){ if( document.addEventListener ){ document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); }else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } }else{ onBridgeReady(); }
  • 返回說明

隱藏底部導航欄沒有返回值。(需要顯示頂部導航欄,請把hideToolbar換成showToolbar)

3、網頁獲取用戶網絡狀態

為了方便開發者根據用戶的網絡狀態來提供不同質量的服務,企業號可以在企業號內部的網頁中使用JavaScript代碼調用來獲取網絡狀態。

  • 接口調用代碼(JavaScript)
function onBridgeReady(){ WeixinJSBridge.invoke('getNetworkType',{}, function(e){ WeixinJSBridge.log(e.err_msg); }); } if (typeof WeixinJSBridge == "undefined"){ if( document.addEventListener ){ document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); }else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } }else{ onBridgeReady(); }
  • 返回說明

獲取用戶網絡狀態的返回值如下:

network_type:WIFI wifi網絡 network_type:edge 非wifi,包含3G/2G network_type:fail 網絡斷開連接 network_type:wwan(2g或者3g)

關閉當前網頁窗口

在微信內置瀏覽器中被訪問的網頁,可使用該JavaScript代碼關閉當前網頁。

主要使用場景: 微信用戶在企業號會話中點擊外鏈到達企業號的網頁,在用戶完成操作后,企業號(網頁方)可調用此接口關閉當前網頁窗口,使用戶返回會話。

  • 接口調用代碼(JavaScript)
WeixinJSBridge.invoke('closeWindow',{},function(res){ //alert(res.err_msg); });
  • 返回說明
返回值 說明
err_msg 關閉成功返回“close_window:ok”,關閉失敗返回“close_window:error”。










總結

以上是生活随笔為你收集整理的微信企业号开发之如何建立连接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 米奇色 | 国产精品一二区在线观看 | 91精品国自产在线偷拍蜜桃 | 免费av一级片 | 国产精品夜夜爽张柏芝 | 人人澡人人澡人人澡 | 欧美一区二区三区视频在线观看 | 欧美日韩精品免费 | 免费一级黄 | 国产欧美视频在线观看 | 国产性生活网站 | 涩涩视频网址 | 成人瑟瑟 | 欧美成人一区二区视频 | 欧美在线视频一区 | 91看片视频| 一卡二卡三卡四卡在线 | 欧美美女性视频 | 久久久久99精品成人片直播 | 爱情岛亚洲论坛入口 | 日本一二三区视频在线 | 久青草视频 | 小嫩嫩12欧美 | 亚洲区精品 | 自拍偷拍视频在线观看 | 在线观看日批视频 | 精品人妻视频在线 | 亚洲国产日韩一区无码精品久久久 | 久久中文字幕无码 | 黄色成人av网站 | 欧美巨乳在线观看 | 亚洲精品福利在线观看 | 重囗另类bbwseⅹhd | 亚洲精品日产精品乱码不卡 | 99热这里只有精品4 精品国产黄色 | 91一区在线 | 国产哺乳奶水91在线播放 | 午夜之声l性8电台lx8电台 | 国产淫视| 嘿咻视频在线观看 | 日韩成人精品一区二区 | 国产乱淫av免费 | 国产精品剧情av | 欧美大色网 | 伊人久久超碰 | 久久久激情| 男插女av | 黄色免费视频观看 | 中文字幕精品一区二区三区精品 | 亚洲色在线视频 | av爱爱网站 | 国产麻豆影视 | 成人av无码一区二区三区 | 久久精品女人毛片国产 | 中文字幕第9页 | 91成人精品 | 欧美成人精品在线观看 | av片免费在线播放 | 亚洲精品国产精品国自产在线 | 国产在线观看免费视频软件 | 国产aⅴ精品 | 97成人精品视频在线观看 | 国产精品第一 | 日本爱爱免费视频 | 日韩av免费网站 | 国产成a人亚洲精v品无码 | 少妇无内裤下蹲露大唇视频 | a在线天堂 | 亚洲福利视频网 | 黄色av高清| 亚洲春色在线观看 | 婷婷久久精品 | 涩涩视频在线观看 | 久草免费在线视频观看 | 激情爱爱网站 | 在线视频观看你懂得 | 男人免费网站 | 亚洲精品69 | 免费jizz | 成人免费91 | 就去吻亚洲| 亚洲成年人 | 国产一区二区三区在线 | 国产视频网站在线观看 | 超碰在线超碰 | 黑森林福利视频导航 | 国内精品久久久久久久影视简单 | 欧美黑人多人双交 | 久久精品99北条麻妃 | 男女羞羞无遮挡 | 巨胸喷奶水www久久久免费动漫 | 欧美色图综合网 | 青青草视频观看 | 男人的天堂免费视频 | 日本久久中文字幕 | 男人插女人下面视频 | 69视频在线看 | 五月天啪啪| 黄色a免费 |