欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

小程序登錄及AppSecret(小程序密鑰) - 新聞資訊 - 云南小程序開(kāi)發(fā)|云南軟件開(kāi)發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開(kāi)發(fā)/軟件開(kāi)發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >

小程序登錄及AppSecret(小程序密鑰)

發(fā)表時(shí)間:2021-1-4

發(fā)布人:葵宇科技

瀏覽次數(shù):100


在授權(quán)開(kāi)發(fā)以后,需要提交小程序密鑰,有小程序密鑰第三方才有能力獲取用戶(hù)的一些信息,提供一些能力!

平臺(tái)分別提供多種方式實(shí)現(xiàn)微信登錄:
  1. 調(diào)用wx.login接口,靜默獲取openid
適用場(chǎng)景:無(wú)需使用用戶(hù)頭像、昵稱(chēng)、Unionid信息
復(fù)制代碼
  1. 使用 open-data (小程序)或者開(kāi)放數(shù)據(jù)域(小游戲)的方式展示用戶(hù)信息(無(wú)需用戶(hù)授權(quán))
適用場(chǎng)景:需要在前端“展示”用戶(hù)頭像、昵稱(chēng)信息,但不需要獲取Unionid
復(fù)制代碼
  1. 使用button(小程序)或UserInfoButton(小游戲)組件,用戶(hù)點(diǎn)擊后彈窗請(qǐng)求用戶(hù)授權(quán)
適用場(chǎng)景:需要獲取用戶(hù)頭像、昵稱(chēng)、Unionid等基本信息
復(fù)制代碼

開(kāi)發(fā)建議

  • 第一步:獲取openID
當(dāng)用戶(hù)訪(fǎng)問(wèn)小程序時(shí),先通過(guò)wx.login,獲取用戶(hù)openID 。這時(shí)無(wú)需彈框授權(quán),開(kāi)發(fā)者拿到 openID 可以建立自身的帳號(hào) ID。
復(fù)制代碼
  • 第二步: 使用open-data方式或開(kāi)放數(shù)據(jù)域方式展示頭像昵稱(chēng)
如需要在前端展示用戶(hù)頭像、昵稱(chēng)信息, 使用open-data 方式或者開(kāi)放數(shù)據(jù)域的方式展示用戶(hù)信息
復(fù)制代碼
  • 第三步:根據(jù)實(shí)際使用場(chǎng)景,使用組件,引導(dǎo)用戶(hù)登錄
在關(guān)鍵操作中,如必須獲取用戶(hù)頭像、昵稱(chēng)、UnionID信息,可根據(jù)第一步獲取的openID判斷是新用戶(hù)還是舊用戶(hù):

    如果是舊用戶(hù),可以直接登錄,也可定期使用wx.getUserInfo更新用戶(hù)的信息;

    如果是新用戶(hù),使用button(小程序)或UserInfoButton(小游戲)組件,在用戶(hù)點(diǎn)擊后彈窗請(qǐng)求獲取用戶(hù)基本信息。
復(fù)制代碼

會(huì)話(huà)密鑰 session_key 有效性

開(kāi)發(fā)者如果遇到因?yàn)?code style="font-size: 14px; word-wrap: break-word; padding: 2px 4px; border-radius: 4px; margin: 0 2px; color: #1e6bb8; background-color: rgba(27,31,35,.05); font-family: Operator Mono, Consolas, Monaco, Menlo, monospace; word-break: break-all;">session_key 不正確而校驗(yàn)簽名失敗或解密失敗,請(qǐng)關(guān)注下面幾個(gè)與session_key有關(guān)的注意事項(xiàng)

1. wx.login 調(diào)用時(shí),用戶(hù)的 session_key 可能會(huì)被更新而致使舊 session_key 失效(刷新機(jī)制存在最短周期,如果同一個(gè)用戶(hù)短時(shí)間內(nèi)多次調(diào)用 wx.login,并非每次調(diào)用都導(dǎo)致 session_key 刷新)。開(kāi)發(fā)者應(yīng)該在明確需要重新登錄時(shí)才調(diào)用 wx.login,及時(shí)通過(guò) code2Session 接口更新服務(wù)器存儲(chǔ)的 session_key。
2. 微信不會(huì)把 session_key 的有效期告知開(kāi)發(fā)者。我們會(huì)根據(jù)用戶(hù)使用小程序的行為對(duì) session_key 進(jìn)行續(xù)期。用戶(hù)越頻繁使用小程序,session_key 有效期越長(zhǎng)。
開(kāi)發(fā)者在 session_key 失效時(shí),可以通過(guò)重新執(zhí)行登錄流程獲取有效的
3. 開(kāi)發(fā)者在 session_key 失效時(shí),可以通過(guò)重新執(zhí)行登錄流程獲取有效的 session_key。使用接口 wx.checkSession可以校驗(yàn) session_key 是否有效,從而避免小程序反復(fù)執(zhí)行登錄流程。
4. 當(dāng)開(kāi)發(fā)者在實(shí)現(xiàn)自定義登錄態(tài)時(shí),可以考慮以 session_key 有效期作為自身登錄態(tài)有效期,也可以實(shí)現(xiàn)自定義的時(shí)效性策略。
復(fù)制代碼
  • 如果使用自己服務(wù)器定義的登錄態(tài)失效時(shí)間,則不需要wx.checkSession

下面是自己項(xiàng)目中的小程序登錄代碼

涉及到用戶(hù)掃碼進(jìn)入小程序,同時(shí)判斷掃碼進(jìn)入是否注冊(cè)過(guò)

   //獲取個(gè)人信息
   getUserFootpathInfofunction (that{
    that = this;
    wx.login({
      successfunction (data{
        console.log(data, '個(gè)人信息1')
        http.getReq('getwechatinfo?code=' + data.code + "&serct=" + app.globalData.serct, function (ress{
          console.log(ress)
          app.globalData.openid = ress.data.openid
          that.setData({
            openid:ress.data.openid
          })
          http.getReq("getuserinfo?openid=" + ress.data.openid + "&unionid=" + app.globalData.unionid + "&serct=" + getApp().globalData.serct, function (res{
            console.log(res.data, '個(gè)人信息2')
            // imageId 掃碼進(jìn)入小程序 用戶(hù) 進(jìn)入游戲的唯一標(biāo)識(shí)
            that.setData({
              imageId: res.data.imageId
            })
            if (that.data.device) {
              getApp().globalData.type = 2// 2代表掃碼
              // 同時(shí)通過(guò)注冊(cè)得Id判斷是否注冊(cè),
              if (that.data.imageId) {
                // 授權(quán)成功
                that.setData({
                  bikeFlagtrue
                })
              } else {
                // 沒(méi)有授權(quán) "跳轉(zhuǎn)到注冊(cè)頁(yè)面"
                if(that.data.btn_disabled){
                  wx.redirectTo({
                    url'../webview/webregist?openid=' + that.data.openid
                  })
                }else{
                  wx.showToast({
                    title"請(qǐng)勾選相關(guān)條款",
                    icon'none'
                  })
                }
                
              }
            }
            app.globalData.imageId = res.data.imageId;
            app.globalData.getUserInfo = res.data;
            app.globalData.existsflag = res.data.existsflag;
            // 調(diào)取單車(chē)數(shù)據(jù)
            that.postRunSportData();
            if (res.data.existsflag == 1 || that.data.skipType == "0001") {
              that.setData({
                httpUserInfo: res.data
              })
              if (that.data.httpUserInfo.username == null || that.data.httpUserInfo.username == "") {
                that.setData({
                  nickName"步道用戶(hù)"
                })
              } else {
                that.setData({
                  nickName: that.data.httpUserInfo.username
                })
              }
            } else {
              app.globalData.openid = "guest";
              //未注冊(cè) 彈窗注冊(cè)
              that.setData({
                showRegisterModal: !that.data.showRegisterModal
              })
            }
            that.checkLocation(that)
          })
        })
      },
      failfunction (err{
        console.log('wx.login 接口調(diào)用失敗,將無(wú)法正常使用開(kāi)放接口等服務(wù)', err)
      }
    })
  },

相關(guān)案例查看更多