首頁 >微信小程式 >小程式開發 >詳解企業微信關聯小程式取得員工信息

詳解企業微信關聯小程式取得員工信息

coldplay.xixi
coldplay.xixi轉載
2021-04-16 10:59:453531瀏覽

詳解企業微信關聯小程式取得員工信息

企業微信關聯小程式取得目前登入小程式的員工資訊

最近應領導要求,自動取得員工信息,遇到了一些問題,再在此記錄一下。

  • 小程式想要獲取員工的用戶信息,需要依序取得下面幾個參數,環環相扣的。

    • code。此處code是用於傳值到服務端和自產自銷。
      詳解企業微信關聯小程式取得員工信息

    • corpid 企業的企業id。尋找路徑–>登入企業微信網頁版
      詳解企業微信關聯小程式取得員工信息

    • corpsecret 取得的前提是正在開發的小程式已經與企業微信進行了關聯。驚不驚喜意不意外?這要求就像是我想跑步但我還沒有腿。解決方法:用已經和企業微信關聯好的小程式的corpsecret 。此參數尋覓路徑:

    詳解企業微信關聯小程式取得員工信息

    • 透過上面兩個參數用來取得access_token。代碼:

      wx.request({
              url: 'https://qyapi.weixin.qq.com/cgi-bin/gettoken',
              data: {
                corpid:'你的企业corpid',
                corpsecret:'你的小程序corpsecret'
              },})

      官方回傳參數 清單

      //成功的返回结果{
         "errcode":0,
         "errmsg":"",
         "access_token": "accesstoken000001",
         "expires_in": 7200}//失败的返回结果{
         "errcode":40091,
         "errmsg":"secret is invalid"}
    • #透過access_token、code來取得userid。 userid的解釋:from官方

      用户在企业内的UserID,对应管理端的帐号,企业内唯一。注意:如果该企业没有关联该小程序,则此处返回加密的userid

      取得userid的程式碼

      wx.request({
                  url: 'https://qyapi.weixin.qq.com/cgi-bin/miniprogram/jscode2session',
                  data:{
                    access_token:res.data.access_token,
                    js_code:login.code,
                    grant_type:'authorization_code',
                  },})
    • 然後拿到access_token和userid我們來取得目前員工的資訊

       wx.request({
                      url: 'https://qyapi.weixin.qq.com/cgi-bin/user/get',
                      data:{
                        access_token:res.data.access_token,
                        userid:getInfo.data.userid                },
       })

      回傳的結果json物件:from官方

      {
          "errcode": 0,
          "errmsg": "ok",
          "userid": "zhangsan",
          "name": "张三",
          "department": [1, 2],
          "order": [1, 2],
          "position": "后台工程师",
          "mobile": "13800000000",
          "gender": "1",
          "email": "zhangsan@gzdev.com",
          "is_leader_in_dept": [1, 0],
          "avatar": "http://wx.qlogo.cn/mmopen/ajNVdqHZLLA3WJ6DSZUfiakYe37PKnQhBIeOQBO4czqrnZDS79FH5Wm5m4X69TBicnHFlhiafvDwklOpZeXYQQ2icg/0",
          "thumb_avatar": "http://wx.qlogo.cn/mmopen/ajNVdqHZLLA3WJ6DSZUfiakYe37PKnQhBIeOQBO4czqrnZDS79FH5Wm5m4X69TBicnHFlhiafvDwklOpZeXYQQ2icg/100",
          "telephone": "020-123456",
          "alias": "jackzhang",
          "address": "广州市海珠区新港中路",
          "open_userid": "xxxxxx",
          "main_department": 1,
          "extattr": {
              "attrs": [
                  {
                      "type": 0,
                      "name": "文本名称",
                      "text": {
                          "value": "文本"
                      }
                  },
                  {
                      "type": 1,
                      "name": "网页名称",
                      "web": {
                          "url": "http://www.test.com",
                          "title": "标题"
                      }
                  }
              ]
          },
          "status": 1,
          "qr_code": "https://open.work.weixin.qq.com/wwopen/userQRCode?vcode=xxx",
          "external_position": "产品经理",
          "external_profile": {
              "external_corp_name": "企业简称",
              "external_attr": [{
                      "type": 0,
                      "name": "文本名称",
                      "text": {
                          "value": "文本"
                      }
                  },
                  {
                      "type": 1,
                      "name": "网页名称",
                      "web": {
                          "url": "http://www.test.com",
                          "title": "标题"
                      }
                  },
                  {
                      "type": 2,
                      "name": "测试app",
                      "miniprogram": {
                          "appid": "wx8bd80126147dFAKE",
                          "pagepath": "/index",
                          "title": "my miniprogram"
                      }
                  }
              ]
          }}

      微信提示:當你的小程式未和企業微信關聯,就算你用別的小程式的corpsecret,在微信開發者工具中還是會顯示invalid code 。這是因為你目前的微​​信小程式開發的專案未與企業微信關聯故解決方案兩個:

      1. 可以嘗試使用官方的測試參數,但是官方說,用於測試的參數無法獲取員工的信息,僅用於測試。真開心(emm…)。
      2. 在關聯好的小程式碼下測試。前提是,該關聯的小程式的各項資訊(上面提到的)你可以拿得到。

相關免費學習推薦:微信小程式開發

以上是詳解企業微信關聯小程式取得員工信息的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除