本文實(shí)例講述了微信小程序?qū)W習(xí)筆記之登錄API與獲取用戶信息操作。分享給大家供大家參考,具體如下:
創(chuàng)新互聯(lián)建站成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元囊謙做網(wǎng)站,已為上家服務(wù),為囊謙各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
前面介紹了微信小程序跳轉(zhuǎn)頁面、傳遞參數(shù)獲得數(shù)據(jù),這里來分析一下登錄API與獲取用戶信息操作方法。
【小程序登錄】wx.login()
app.js:
App({
onLaunch: function () {
// 登錄
wx.login({
success: function (res) {
if (res.code) {
//發(fā)起網(wǎng)絡(luò)請(qǐng)求
wx.request({
url: 'https://www.msllws.top/delcode.php',
data: {
code: res.code
}
})
} else {
console.log('登錄失敗!' + res.errMsg)
}
}
});
}
})初始化后得到了臨時(shí)登錄憑證code,使用wx.request()發(fā)送code,請(qǐng)求后臺(tái)接口獲取【會(huì)話密鑰session_key】和【用戶唯一標(biāo)識(shí)openid】,滿足UnionID下發(fā)條件時(shí)還可以獲得【用戶在開放平臺(tái)的唯一標(biāo)識(shí)符unionid】。
后臺(tái)接收code的接口delcode.php:
<?php $code = $_GET['code']; $appid = 'wx1aebd07bdcf596b8'; $secret = '9ee8211007b81efd8c11d7d82d3b8658'; $url = 'https://api.weixin.qq.com/sns/jscode2session?appid='.$appid.'&secret='.$secret.'&js_code='.$code.'&grant_type=authorization_code'; $res = file_get_contents($url); //(省略業(yè)務(wù)邏輯:保存返回結(jié)果中的openid與用戶userid關(guān)聯(lián)......) echo $res;
請(qǐng)求返回結(jié)果:

(unionid需要小程序綁定已認(rèn)證的微信開放平臺(tái)才可以獲得)
【獲取用戶信息】wx.getUserInfo()
首先借助button來授權(quán)登錄,login.wxml:
<open-data type="userAvatarUrl"></open-data>
<open-data type="userNickName"></open-data>
<button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授權(quán)登錄</button>
<view wx:else>請(qǐng)升級(jí)微信版本</view>login.js如下:
Page({
data: {
//判斷getUserInfo是否在當(dāng)前版本可用
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
bindGetUserInfo(e) {
console.log(e.detail.userInfo)
}
})首次點(diǎn)擊button按鈕提示微信授權(quán),允許后調(diào)用bindGetUserInfo函數(shù)打印獲得的用戶信息


此時(shí)修改login.js如下,使用wx.getSetting()獲得用戶信息
(調(diào)用wx.getUserInfo()之前需要調(diào)用wx.getSetting()獲取用戶當(dāng)前的授權(quán)狀態(tài),返回結(jié)果中如果包含【scope.userInfo】,說明用戶已對(duì)用戶信息進(jìn)行授權(quán),可以直接調(diào)用wx.getUserInfo()獲取用戶信息)
Page({
data: {
//判斷getUserInfo是否在當(dāng)前版本可用
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
onLoad: function () {
// 查看是否授權(quán)
wx.getSetting({
success(res) {
if (res.authSetting['scope.userInfo']) {
// 已經(jīng)授權(quán),直接調(diào)用getUserInfo獲取用戶信息
wx.getUserInfo({
success: function (res) {
console.log(res.userInfo)
}
})
}
}
})
},
bindGetUserInfo(e) {
console.log(e.detail.userInfo)
}
})重新編譯,頁面加載獲得同上用戶信息:

此時(shí)再點(diǎn)擊button按鈕不再提示授權(quán)確認(rèn)信息。
希望本文所述對(duì)大家微信小程序開發(fā)有所幫助。
當(dāng)前標(biāo)題:微信小程序?qū)W習(xí)筆記之登錄API與獲取用戶信息操作圖文詳解
URL鏈接:http://www.chinadenli.net/article48/isghhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、靜態(tài)網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、微信公眾號(hào)、、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)