日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)小程序教程:微信小程序API登錄

wx.login(OBJECT)


調(diào)用接口獲取登錄憑證(code)進而換取用戶登錄態(tài)信息,包括用戶的唯一標(biāo)識(openid) 及本次登錄的 會話密鑰(session_key)。用戶數(shù)據(jù)的加解密通訊需要依賴會話密鑰完成。

成都創(chuàng)新互聯(lián)為您提適合企業(yè)的網(wǎng)站設(shè)計?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強的網(wǎng)絡(luò)競爭力!結(jié)合企業(yè)自身,進行網(wǎng)站設(shè)計及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到網(wǎng)站制作、網(wǎng)站建設(shè), 我們的網(wǎng)頁設(shè)計師為您提供的解決方案。

OBJECT參數(shù)說明:

參數(shù)名 類型 必填 說明
successFunction接口調(diào)用成功的回調(diào)函數(shù)
failFunction接口調(diào)用失敗的回調(diào)函數(shù)
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)

success返回參數(shù)說明:

參數(shù)名 類型 說明
errMsgString調(diào)用結(jié)果
codeString用戶允許登錄后,回調(diào)內(nèi)容會帶上 code(有效期五分鐘),開發(fā)者需要將 code 發(fā)送到開發(fā)者服務(wù)器后臺,使用code 換取 session_key api,將 code 換成 openid 和 session_key

示例代碼:

//app.js
App({
  onLaunch: function() {
    wx.login({
      success: function(res) {
        if (res.code) {
          //發(fā)起網(wǎng)絡(luò)請求
          wx.request({
            url: 'https://test.com/onLogin',
            data: {
              code: res.code
            }
          })
        } else {
          console.log('獲取用戶登錄態(tài)失??!' + res.errMsg)
        }
      }
    });
  }
})

code 換取 session_key

?這是一個 HTTPS 接口,開發(fā)者服務(wù)器使用登錄憑證 code 獲取 session_key 和 openid。其中 session_key 是對用戶數(shù)據(jù)進行加密簽名的密鑰。為了自身應(yīng)用安全,session_key 不應(yīng)該在網(wǎng)絡(luò)上傳輸。

接口地址:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

請求參數(shù):

參數(shù) 必填 說明
appid小程序唯一標(biāo)識
secret小程序的 app secret
js_code登錄時獲取的 code
grant_type填寫為 authorization_code

返回參數(shù):

參數(shù) 說明
openid用戶唯一標(biāo)識
session_key會話密鑰
unionid用戶在開放平臺的唯一標(biāo)識符。本字段在滿足一定條件的情況下才返回。具體參看UnionID機制說明

返回說明:

//正常返回的JSON數(shù)據(jù)包
{
      "openid": "OPENID",
      "session_key": "SESSIONKEY"
      "unionid":  "UNIONID"
}
//錯誤時返回JSON數(shù)據(jù)包(示例為Code無效)
{
    "errcode": 40029,
    "errmsg": "invalid code"
}

wx.checkSession(OBJECT)


通過上述接口獲得的用戶登錄態(tài)擁有一定的時效性。用戶越久未使用小程序,用戶登錄態(tài)越有可能失效。反之如果用戶一直在使用小程序,則用戶登錄態(tài)一直保持有效。具體時效邏輯由微信維護,對開發(fā)者透明。開發(fā)者只需要調(diào)用wx.checkSession接口檢測當(dāng)前用戶登錄態(tài)是否有效。登錄態(tài)過期后開發(fā)者可以再調(diào)用wx.login獲取新的用戶登錄態(tài)。

OBJECT參數(shù)說明:

參數(shù)名 類型 必填 說明
successFunction接口調(diào)用成功的回調(diào)函數(shù),登陸態(tài)未過期
failFunction接口調(diào)用失敗的回調(diào)函數(shù),登陸態(tài)已過期
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)

示例代碼:

wx.checkSession({
  success: function(){
    //session 未過期,并且在本生命周期一直有效
  },
  fail: function(){
    //登錄態(tài)過期
    wx.login() //重新登錄    ....
  }
})

登錄態(tài)維護

通過wx.login()獲取到用戶登錄態(tài)之后,需要維護登錄態(tài)。開發(fā)者要注意不應(yīng)該直接把 session_key、openid 等字段作為用戶的標(biāo)識或者 session 的標(biāo)識,而應(yīng)該自己派發(fā)一個 session 登錄態(tài)(請參考登錄時序圖)。對于開發(fā)者自己生成的 session,應(yīng)該保證其安全性且不應(yīng)該設(shè)置較長的過期時間。session 派發(fā)到小程序客戶端之后,可將其存儲在 storage ,用于后續(xù)通信使用。

通過wx.checkSession()檢測用戶登錄態(tài)是否失效。并決定是否調(diào)用wx.login() 重新獲取登錄態(tài)

登錄時序圖

Bug & Tip

  1. bug: iOS/Android 6.3.30,在 App.onLaunch 調(diào)用 wx.login 會出現(xiàn)異常;

文章名稱:創(chuàng)新互聯(lián)小程序教程:微信小程序API登錄
網(wǎng)站路徑:http://www.dlmjj.cn/article/djihhdd.html