在uniapp中如何獲取微信頭像? – 一步步教你獲取微信頭像,快速實現用戶信息顯示

一、小程序配置

1、在微信公眾平台創建小程序,並獲取小程序的AppID

2、在小程序的管理後台中,選擇設置->開發設置,將伺服器域名添加到request合法域名中,同時勾選「不校驗合法域名、web-view(業務域名)、TLS版本以及HTTPS證書」

二、獲取登錄憑證

1、用戶點擊「登錄」按鈕後,調用微信官方提供的wx.login()介面獲取用戶登錄憑證code

uni.login({
  provider: 'weixin',
  success: function (loginRes) {
    if (loginRes.code) {
      // code有效,調用後台介面進行用戶身份驗證和信息獲取
    } else {
      console.log('登錄失敗!' + loginRes.errMsg)
    }
  },
  fail: function (error) {
    console.log('調用wx.login()介面失敗!' + error.errMsg)
  }
})

三、根據code獲取session_key和openid

1、使用wx.request()發送請求到微信伺服器,獲取session_key和openid,以便進一步獲取用戶信息

uni.request({
  url: 'https://api.weixin.qq.com/sns/jscode2session',
  data: {
    appid: '小程序的AppID',
    secret: '小程序的AppSecret',
    js_code: '微信登錄憑證code',
    grant_type: 'authorization_code'
  },
  success: function(res) {
    if (res.statusCode === 200) {
      var session_key = res.data.session_key;
      var openid = res.data.openid;
      // 用於獲取用戶信息或敏感數據的加密數據解密需要的參數
      var encryptedData = '';
      var iv = '';
    } else {
      console.log('調用wx.request()介面失敗!' + res.errMsg)
    }
  },
  fail: function (error) {
    console.log('調用wx.request()介面失敗!' + error.errMsg)
  }
})

四、獲取用戶信息

1、根據文檔,使用getSetting()進行用戶信息授權判斷

uni.getSetting({
  success: function (res) {
    if (res.authSetting['scope.userInfo']) {
      console.log('已授權獲取用戶信息!')
      // 調用用戶信息介面獲取用戶信息
    } else {
      console.log('未授權獲取用戶信息!')
      // 提示用戶授權獲取用戶信息
    }
  }
})

2、調用getUserProfile()獲取用戶信息

uni.getUserProfile({
  desc: '用於完善會員資料',  // 需要獲取的用戶信息描述
  success: function (res) {
    console.log(res.userInfo)
    var userInfo = res.userInfo;
    var nickName = userInfo.nickName;
    var avatarUrl = userInfo.avatarUrl;
    var gender = userInfo.gender; // 性別:0-未知,1-男,2-女
    var province = userInfo.province;
    var city = userInfo.city;
    var country = userInfo.country;
    // 將用戶信息保存到資料庫中
  },
  fail: function (error) {
    console.log('獲取用戶信息失敗!' + error.errMsg)
  }
})

3、根據返回結果,將用戶信息保存到資料庫中,並在頁面上展示

// Vue模板中展示用戶信息:{{nickName}}

五、總結

以上是在uniapp中獲取微信頭像和用戶信息的完整步驟。通過微信官方提供的API介面,我們可以輕鬆地實現用戶信息的獲取和展示。為了保證用戶信息安全,在傳輸和存儲過程中,我們需要採用嚴格的數據加密和解密方式。

原創文章,作者:HGNA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143061.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
HGNA的頭像HGNA
上一篇 2024-10-14 18:45
下一篇 2024-10-14 18:45

相關推薦

  • Ojlat:一款快速開發Web應用程序的框架

    Ojlat是一款用於快速開發Web應用程序的框架。它的主要特點是高效、易用、可擴展且功能齊全。通過Ojlat,開發人員可以輕鬆地構建出高質量的Web應用程序。本文將從多個方面對Oj…

    編程 2025-04-29
  • 二階快速求逆矩陣

    快速求逆矩陣是數學中的一個重要問題,特別是對於線性代數中的矩陣求逆運算,如果使用普通的求逆矩陣方法,時間複雜度為O(n^3),計算量非常大。因此,在實際應用中需要使用更高效的演算法。…

    編程 2025-04-28
  • 快速排序圖解

    快速排序是一種基於分治思想的排序演算法,效率非常高。它通過在序列中尋找一個主元,將小於主元的元素放在左邊,大於主元的元素放在右邊,然後在左右子序列中分別遞歸地應用快速排序。下面將從算…

    編程 2025-04-28
  • Python性能分析: 如何快速提升Python應用程序性能

    Python是一個簡潔高效的編程語言。在大多數情況下,Python的簡潔和生產力為開發人員帶來了很大便利。然而,針對應用程序的性能問題一直是Python開發人員需要面對的一個難題。…

    編程 2025-04-27
  • mfastboot:快速刷機利器

    本文將詳細闡述全能工程師如何使用mfastboot進行快速刷機,並且深入解析mfastboot的功能與優勢。 一、下載並配置mfastboot 1、首先,在Ubuntu中打開終端並…

    編程 2025-04-27
  • 微博、爬蟲、知乎:如何快速抓取社交媒體數據?

    社交媒體平台是大眾傳播的重要渠道,也是學術研究中廣泛使用的數據來源。但是,手工抓取數據的效率極低,因此需要使用爬蟲技術將數據自動抓取下來。本文將以微博、爬蟲、知乎為中心,介紹如何使…

    編程 2025-04-27
  • ITQFS——基於人工智慧的快速文件搜索引擎

    ITQFS是一種基於人工智慧技術的快速文件搜索引擎,它可以自動整理、分類、檢索和分享您的文件,讓您在文件管理上提高效率。 一、ITQFS的特性 1、ITQFS可以為用戶提供高效、快…

    編程 2025-04-27
  • 如何通過快捷鍵快速新建幻燈片

    快捷鍵可以讓我們更加高效地處理任務,新建幻燈片也不例外。下面將從多個方面介紹如何通過快捷鍵快速新建幻燈片。 一、使用PowerPoint快捷鍵 如果你是使用PowerPoint來制…

    編程 2025-04-27
  • Python快捷:走進Python快速編程世界

    Python作為一種高級編程語言,近年來備受關注。其主張簡單明了、易於閱讀的語法,以及豐富的庫和模塊,使其成為了全球程序員愛寵。在Python中,快捷編程的理念極為重要,使得開發者…

    編程 2025-04-27
  • 用Python爬取網路女神頭像

    本文將從以下多個方面詳細介紹如何使用Python爬取網路女神頭像。 一、準備工作 在進行Python爬蟲之前,需要準備以下幾個方面的工作: 1、安裝Python環境。 sudo a…

    編程 2025-04-27

發表回復

登錄後才能評論