从企业微信登录小程序的坑
一. 基本需求
小程序需要有一個企業(yè)微信的入口,就是讓小程序綁定在企業(yè)微信的工作臺。這樣我們不僅可以在企業(yè)微信中使用小程序,也可以使用企業(yè)微信的信息。所以我們要做的就是文檔中說的
二. 步驟
安裝示意圖,步驟如下(隨便也會說坑)
先上線一個普通版本的小程序(申請審核的那種),為什么,因為有個步驟用到了關聯(lián)小程序的企業(yè)微信應用的screct, 而你去做關聯(lián)操作,肯定要一個上線的小程序。 不然需要提交資料給客服,讓他臨時幫你申請權限,我感覺先上線個普通版本比較好。
先判斷是不是企業(yè)微信環(huán)境wx.getSystemInfoSync,返回的res.environment === 'wxwork'表示是在企業(yè)微信環(huán)境。
所以1,2步驟都是前提工作,剩下的就是wx.qy.login獲取code, 后端通過corpid和關聯(lián)小程序的企業(yè)微信應用的screct(企業(yè)微信應用后臺管理可以看到)得到access_token,在利用access_token得到session+userid, 最后后端一般會返回一個有時效性的token(關聯(lián)了session+userid的信息),每次前端請求都攜帶就好了。
三. 代碼
const res = wx.getSystemInfoSync()
// 如果是企業(yè)微信環(huán)境
if(res.environment === 'wxwork') {
wx.qy.login({
success (res) {
if (res.code) {
//發(fā)起網(wǎng)絡請求
wx.request({
url: 'xx', // 后端的地址
data: {
code: res.code
},
success (res) {
// 這裏就是得到token的位置了,然后緩存token
console.log(res.data)
}
})
} else {
console.log('登錄失敗!' + res.errMsg)
}
}
})
}
四. 調(diào)試
這里需要先綁定到對應的企業(yè)微信,使用企業(yè)微信入口調(diào)試,才能觸發(fā)到以上代碼,目前開發(fā)者工具不支持wx.qy.login。
五. 題外話
1. wx.getUserInfo
微信小程序回收wx.getUserInfo接口可獲取用戶個人信息能力。
2021年4月28日24時后發(fā)布的新版本小程序,開發(fā)者調(diào)用wx.getUserInfo或<button open-type="getUserInfo"/>將不再彈出彈窗,直接返回匿名的用戶個人信息,獲取加密后的openID、unionID數(shù)據(jù)的能力不做調(diào)整。
而新增的wx.getUserProfile需要用戶點擊按鈕觸發(fā),直接調(diào)用是不會彈出彈窗的。
總結
以上是生活随笔為你收集整理的从企业微信登录小程序的坑的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TortoiseGit 合并分支方法
- 下一篇: 怎么创建具有真实纹理的CG场景岩石?