欧美日韩精品一区二区在线线,一级无码在线收看,精品国产高清91,久久精品欧美电影

# 用戶信息功能頁

用戶信息功能頁用于幫助插件獲取用戶信息,包括 openid 和昵稱等,相當(dāng)于 wx.loginwx.getUserInfo 的功能。

在基礎(chǔ)庫版本 2.3.1 前,用戶信息功能頁是插件中唯一的獲取 code 和用戶信息的方式;

自基礎(chǔ)庫版本 2.3.1 起,用戶在該功能頁中進(jìn)行過授權(quán)后,插件可以直接調(diào)用 wx.loginwx.getUserInfo

  • 授權(quán)是以【用戶 + 小程序 + 插件】為維度進(jìn)行授權(quán)的,即同一個用戶在不同小程序中使用同一個插件,或同一個小程序中使用不同插件,都需要單獨(dú)進(jìn)行授權(quán)
  • 自基礎(chǔ)庫版本 2.6.3 起,可以使用 wx.getSetting 來查詢用戶是否授權(quán)過

另外,在滿足以下任一條件時,插件可以直接調(diào)用 wx.login

  1. 使用插件的小程序與插件擁有相同的 AppId
  2. 使用插件的小程序與插件綁定了同一個 微信開放平臺 賬號,且使用插件的小程序與插件均與開放平臺賬號為同主體或關(guān)聯(lián)主體

不滿足以上條件時,wx.loginwx.getUserInfo 將返回失敗。

# 調(diào)用參數(shù)

用戶信息功能頁使用 functional-page-navigator 進(jìn)行跳轉(zhuǎn)時,對應(yīng)的參數(shù) name 應(yīng)為固定值 loginAndGetUserInfo,其余參數(shù)與 wx.getUserInfo 相同,具體來說:

args 參數(shù)說明:

參數(shù)名 類型 必填 說明
withCredentials Boolean 是否帶上登錄態(tài)信息
lang String 指定返回用戶信息的語言,zh_CN 簡體中文,zh_TW 繁體中文,en 英文。默認(rèn)為 en。
timeout Number 超時時間,單位 ms

注:當(dāng) withCredentials 為 true 時,返回的數(shù)據(jù)會包含 encryptedData, iv 等敏感信息。

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

參數(shù) 類型 說明
code String wx.login 獲得的用戶登錄憑證(有效期五分鐘)。開發(fā)者需要在開發(fā)者服務(wù)器后臺調(diào)用 api,使用 code 換取 openid 和 session_key 等信息
errMsg String 調(diào)用結(jié)果
userInfo OBJECT 用戶信息對象,不包含 openid 等敏感信息
rawData String 不包括敏感信息的原始數(shù)據(jù)字符串,用于計(jì)算簽名。
signature String 使用 sha1( rawData + sessionkey ) 得到字符串,用于校驗(yàn)用戶信息,參考文檔 signature。
encryptedData String 包括敏感數(shù)據(jù)在內(nèi)的完整用戶信息的加密數(shù)據(jù),詳細(xì)見 加密數(shù)據(jù)解密算法
iv String 加密算法的初始向量,詳細(xì)見 加密數(shù)據(jù)解密算法

userInfo 參數(shù)說明:

參數(shù) 類型 說明
nickName String 用戶昵稱
avatarUrl String 用戶頭像,最后一個數(shù)值代表正方形頭像大?。ㄓ?0、46、64、96、132 數(shù)值可選,0 代表 132*132 正方形頭像),用戶沒有頭像時該項(xiàng)為空。若用戶更換頭像,原有頭像 URL 將失效。
gender String 用戶的性別,值為 1 時是男性,值為 2 時是女性,值為 0 時是未知
city String 用戶所在城市
province String 用戶所在省份
country String 用戶所在國家
language String 用戶的語言,簡體中文為 zh_CN

# 示例代碼

<!--plugin/components/hello-component.wxml-->
  <functional-page-navigator
    name="loginAndGetUserInfo"
    args="{{ args }}"
    version="develop"
    bind:success="loginSuccess"
    bind:fail="loginFail"
  >
    <button class="login">登錄到插件</button>
  </functional-page-navigator>
// plugin/components/hello-component.js
Component({
  properties: {},
  data: {
    args: {
      withCredentials: true,
      lang: 'zh_CN'
    }
  },
  methods: {
    loginSuccess: function (res) {
      console.log(res.detail);
    },
    loginFail: function (res) {
      console.log(res);
    }
  }
});

用戶點(diǎn)擊該 navigator 后,將跳轉(zhuǎn)到如下的用戶信息功能頁:

用戶信息功能頁

在微信開發(fā)者工具中查看示例

  1. 由于插件需要 appid 才能工作,請?zhí)钊胍粋€ appid;
  2. 由于當(dāng)前代碼片段的限制,打開該示例后請 手動將 appid 填寫到 miniprogram/app.json 中(如下圖)使示例正常運(yùn)行。

手動填寫 appid