這篇文章將為大家詳細(xì)講解有關(guān)開(kāi)發(fā)企業(yè)小程序的流程步驟,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)公司是一家網(wǎng)站設(shè)計(jì)公司,集創(chuàng)意、互聯(lián)網(wǎng)應(yīng)用、軟件技術(shù)為一體的創(chuàng)意網(wǎng)站建設(shè)服務(wù)商,主營(yíng)產(chǎn)品:成都響應(yīng)式網(wǎng)站建設(shè)、成都品牌網(wǎng)站建設(shè)、成都營(yíng)銷(xiāo)網(wǎng)站建設(shè)。我們專(zhuān)注企業(yè)品牌在網(wǎng)站中的整體樹(shù)立,網(wǎng)絡(luò)互動(dòng)的體驗(yàn),以及在手機(jī)等移動(dòng)端的優(yōu)質(zhì)呈現(xiàn)。成都做網(wǎng)站、網(wǎng)站制作、移動(dòng)互聯(lián)產(chǎn)品、網(wǎng)絡(luò)運(yùn)營(yíng)、VI設(shè)計(jì)、云產(chǎn)品.運(yùn)維為核心業(yè)務(wù)。為用戶(hù)提供一站式解決方案,我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶(hù),為客戶(hù)提供賞析悅目的作品,網(wǎng)站的價(jià)值服務(wù)。導(dǎo)語(yǔ):
開(kāi)發(fā)一個(gè)小程序,該小程序只能在企業(yè)微信中訪(fǎng)問(wèn),并且企業(yè)微信里只有被授權(quán)的用戶(hù)可以使用。
問(wèn)題分析:
首先,這里面需要解決幾個(gè)問(wèn)題:
1、只在企業(yè)微信里使用,不能在普通小程序使用
判斷當(dāng)前運(yùn)行環(huán)境
2、只有授權(quán)的用戶(hù)可以使用該小程序
權(quán)限校驗(yàn)
1:普通微信,使用賬號(hào)+密碼登陸,審核專(zhuān)用,可限制賬號(hào)權(quán)限
2:企業(yè)微信,校驗(yàn)企業(yè)id,校驗(yàn)用戶(hù)id,有權(quán)限的才允許使用
3、控制搜索
在小程序管理后臺(tái)設(shè)置「不允許被搜索」
4、控制分享
小程序里面關(guān)閉分享
OK,做到以上幾點(diǎn),就實(shí)現(xiàn)了只有企業(yè)微信里授權(quán)的用戶(hù),才能夠在企業(yè)微信的 工作臺(tái) 看到該小程序。
處理流程
好,既然問(wèn)題已經(jīng)明確了,那我們就搞起。
1、小程序基礎(chǔ)功能開(kāi)發(fā),提交審核
對(duì),沒(méi)看錯(cuò),先提交審核,因?yàn)橹挥袑徍送ㄟ^(guò)的小程序才能被企業(yè)微信綁定。所以,先把小程序的基礎(chǔ)功能做出來(lái),可以限制一部分功能,總之,就是先讓這個(gè)小程序上架。同時(shí),在小程序的管理后臺(tái)設(shè)置「不允許被搜索」,避免不必要的麻煩。
2、企業(yè)微信關(guān)聯(lián)小程序
進(jìn)入企業(yè)微信后臺(tái) -> 應(yīng)用管理 -> 小程序 -> 關(guān)聯(lián)小程序,然后使用小程序管理員的微信掃碼,按照指引操作即可。
3、獲取關(guān)聯(lián)小程序的 Secret,設(shè)置可見(jiàn)范圍
上一步的小程序頁(yè)面會(huì)出現(xiàn)剛才關(guān)聯(lián)的小程序,點(diǎn)擊進(jìn)入,然后就看到 secret 及可見(jiàn)范圍。
這個(gè) secret 相當(dāng)于該小程序訪(fǎng)問(wèn)該企業(yè)微信數(shù)據(jù)的令牌,請(qǐng)妥善保存。
可見(jiàn)范圍就是授權(quán),哪些用戶(hù)能看到這個(gè)小程序,被設(shè)置可見(jiàn)的人將會(huì)在自己企業(yè)微信的工作臺(tái)看到該小程序。
4、修改小程序
好了,到重頭戲了。
4.1、判斷運(yùn)行環(huán)境
小程序需要判斷當(dāng)前的運(yùn)行環(huán)境(普通微信 or 企業(yè)微信),需要判斷使用當(dāng)前小程序的用戶(hù)是否有權(quán)限使用。
var isWxWork = false; wx.getSystemInfo({ success(res) { console.log(res.environment); isWxWork = res.environment == 'wxwork'; if (!isWxWork) { // 當(dāng)前環(huán)境不是企業(yè)微信,怎么處理你隨便 return; } // 當(dāng)前環(huán)境是企業(yè)微信,執(zhí)行登陸,獲取用戶(hù) code,用于后面的權(quán)限校驗(yàn) wx.qy.login({ success: function (res) { if (res.code) { console.log(res.code); // 這里可以將 res.code 通過(guò)請(qǐng)求發(fā)送給后臺(tái),讓后臺(tái)做權(quán)限校驗(yàn) } else { console.log('登錄失??!' + res.errMsg); } } }); } })
4.2、權(quán)限校驗(yàn)
后臺(tái)需要調(diào)用以下幾個(gè)接口來(lái)進(jìn)行權(quán)限校驗(yàn)。
1、獲取 access_token
/tupian/20230522/gettoken 請(qǐng)求方式:GET
這個(gè)接口和普通微信獲取 token 的方法類(lèi)似。
其中,corpid 在企業(yè)微信管理后臺(tái)->我的企業(yè)->企業(yè)信息->企業(yè)ID;corpsecret 就是我們上一步關(guān)聯(lián)小程序后獲取的 secret。
返回內(nèi)容如下:
{ "errcode": 0, "errmsg": "ok", "access_token": "xxxxxx", "expires_in": 7200 }
2、獲取 userid
/tupian/20230522/jscode2session 請(qǐng)求方式:GET
其中,access_token 是我們前一步 gettoken 獲取到的;js_code 是前面判斷運(yùn)行環(huán)境時(shí)獲取到的 res.code;grant_type 固定傳 authorization_code
返回內(nèi)容如下:
{ "userid": "bottle", "session_key": "xxxxx", "corpid": "xxxxxx", "deviceid": "xxxxxx", "errcode": 0, "errmsg": "ok" }
這里的 corpid 可以用來(lái)初步校驗(yàn)當(dāng)前用戶(hù)是否有權(quán)限,因?yàn)闊o(wú)論哪個(gè)公司的人,只要他用企業(yè)微信,使用這個(gè)小程序,都會(huì)返回這樣的結(jié)果,你需要根據(jù) corpid 是否是你授權(quán)的企業(yè)的ID來(lái)校驗(yàn),如果不是,直接返回?zé)o權(quán)限就可以,不用進(jìn)行下一步。
當(dāng)然 corpid 也可以用于處理一個(gè)小程序關(guān)聯(lián)多家公司的情況,不過(guò)這是另一個(gè)問(wèn)題了。這里簡(jiǎn)單提一嘴,因?yàn)槭墙o其他公司開(kāi)發(fā)的小程序,所以我們這個(gè)小程序也關(guān)聯(lián)了兩個(gè)企業(yè),一個(gè)我們公司,一個(gè)對(duì)方公司,這樣也方便我們測(cè)試,只需要給我們自己的測(cè)試人員授權(quán)就可以讓他們使用完全相同的環(huán)境進(jìn)行測(cè)試了。
3、獲取用戶(hù)信息(判斷權(quán)限)
/tupian/20230522/get 請(qǐng)求方式:GET
其中,access_token 是我們前一步 gettoken 獲取到的;userid 就是我們上一步獲取到的 userid。
返回內(nèi)容如下:
有權(quán)限
{ "errcode": 0, "errmsg": "ok", "userid": "xxx", "name": "xxx", "department": [], "position": "", "mobile": "xxx", "gender": "2", "email": "", "avatar": "http://p.qlogo.cn/bizmail/xxx/0", "status": 1, "isleader": 0, "extattr": { "attrs": [] }, "telephone": "", "enable": 1, "hide_mobile": 0, "order": [], "qr_code": "/tupian/20230522/userQRCode.png "alias": "", "is_leader_in_dept": [] }
無(wú)權(quán)限:
{ "errcode": 60011, "errmsg": "no privilege to access/modify contact/party/agent , hint: [1564556097_7_8d45297bd21be3702ff430560e1f0652], from ip: 118.113.1.217, more info at /tupian/20230522/query "department": [], "order": [], "is_leader_in_dept": [] }
OK,后面根據(jù)有權(quán)限還是無(wú)權(quán)限,執(zhí)行不同的操作就可以了,這里不再贅述。
關(guān)于“開(kāi)發(fā)企業(yè)小程序的流程步驟”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
新聞名稱(chēng):開(kāi)發(fā)企業(yè)小程序的流程步驟-創(chuàng)新互聯(lián)
文章位置:http://www.rwnh.cn/article46/gdpeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、響應(yīng)式網(wǎng)站、靜態(tài)網(wǎng)站、企業(yè)建站、移動(dòng)網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷(xiāo)推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容