欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序?qū)W習(xí)筆記之登錄API與獲取用戶信息操作圖文詳解

 更新時(shí)間:2019年03月29日 09:52:58   作者:李維山  
這篇文章主要介紹了微信小程序?qū)W習(xí)筆記之登錄API與獲取用戶信息操作,結(jié)合實(shí)例形式分析了微信小程序登陸請(qǐng)求及后臺(tái)交互相關(guān)操作技巧,并結(jié)合圖文形式進(jìn)行說(shuō)明,需要的朋友可以參考下

本文實(shí)例講述了微信小程序?qū)W習(xí)筆記之登錄API與獲取用戶信息操作。分享給大家供大家參考,具體如下:

前面介紹了微信小程序跳轉(zhuǎn)頁(yè)面、傳遞參數(shù)獲得數(shù)據(jù),這里來(lái)分析一下登錄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í)還可以獲得【用戶在開(kāi)放平臺(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)證的微信開(kāi)放平臺(tái)才可以獲得)

【獲取用戶信息】wx.getUserInfo()

首先借助button來(lái)授權(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】,說(shuō)明用戶已對(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)
 }
})

重新編譯,頁(yè)面加載獲得同上用戶信息:

此時(shí)再點(diǎn)擊button按鈕不再提示授權(quán)確認(rèn)信息。 

希望本文所述對(duì)大家微信小程序開(kāi)發(fā)有所幫助。

相關(guān)文章

  • 防止頁(yè)面url緩存中ajax中post請(qǐng)求的處理方法

    防止頁(yè)面url緩存中ajax中post請(qǐng)求的處理方法

    這篇文章主要介紹了防止頁(yè)面url緩存中ajax中post請(qǐng)求的處理方式的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下
    2017-10-10
  • 使用uni-app打包H5的圖文教程

    使用uni-app打包H5的圖文教程

    uni-app是一個(gè)使用Vue.js開(kāi)發(fā)所有前端應(yīng)用的框架,開(kāi)發(fā)者編寫一套代碼,可發(fā)布到iOS,Android,H5,以及各種小程序(微信/支付寶/百度/頭條/?QQ?/釘釘)等多個(gè)平臺(tái),這篇文章主要給大家介紹了關(guān)于使用uni-app打包H5的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • uniapp獲取底部安全距離以及狀態(tài)欄高度等

    uniapp獲取底部安全距離以及狀態(tài)欄高度等

    最近在用uniapp開(kāi)發(fā)的時(shí)候遇到了一些問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于uniapp獲取底部安全距離以及狀態(tài)欄高度等的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • 整理一下常見(jiàn)的IE錯(cuò)誤

    整理一下常見(jiàn)的IE錯(cuò)誤

    多年以來(lái),IE一直都是最難于調(diào)試JavaScript 錯(cuò)誤的瀏覽器。IE給出的錯(cuò)誤消息一般很短又語(yǔ)焉不詳。而且上下文信息也很少,有時(shí)甚至一點(diǎn)都沒(méi)有。下面幾小節(jié)將分別探討一些在IE中難于調(diào)試的JavaScript 錯(cuò)誤
    2016-11-11
  • JS讀取XML文件示例代碼

    JS讀取XML文件示例代碼

    讀取XML文件的方法有很多,在本文為大家詳細(xì)介紹下使用js是如何做到的,感興趣的朋友可以參考下本文
    2013-11-11
  • 使用JavaScript實(shí)現(xiàn)一個(gè)小程序之99乘法表

    使用JavaScript實(shí)現(xiàn)一個(gè)小程序之99乘法表

    這篇文章主要介紹了使用JavaScript實(shí)現(xiàn)一個(gè)小程序之99乘法表的相關(guān)資料,需要的朋友可以參考下
    2017-09-09
  • JavaScript中apply與call的用法意義及區(qū)別說(shuō)明

    JavaScript中apply與call的用法意義及區(qū)別說(shuō)明

    JavaScript中有一個(gè)call和apply方法,其作用基本相同,但也有略微的區(qū)別。
    2010-04-04
  • JavaScript實(shí)現(xiàn)的斑馬線表格效果【隔行變色】

    JavaScript實(shí)現(xiàn)的斑馬線表格效果【隔行變色】

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)的斑馬線表格效果,通過(guò)javascript針對(duì)table表格的遍歷與運(yùn)算實(shí)現(xiàn)隔行變色功能,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2017-09-09
  • JavaScript深拷貝的一些踩坑記錄

    JavaScript深拷貝的一些踩坑記錄

    這篇文章主要給大家介紹了關(guān)于JavaScript深拷貝的一些踩坑記錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • JavaScript數(shù)組的5種迭代方法

    JavaScript數(shù)組的5種迭代方法

    這篇文章主要為大家詳細(xì)介紹了JavaScript數(shù)組的5種迭代方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09

最新評(píng)論