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

uniapp實(shí)現(xiàn)微信小程序一鍵登錄功能

 更新時(shí)間:2024年10月21日 09:41:16   作者:小李大魔王  
這篇文章給大家介紹了uniapp實(shí)現(xiàn)微信小程序一鍵登錄功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧

前言

實(shí)現(xiàn)微信一鍵登錄的流程:

① 微信小程序端獲取臨時(shí)憑證codecode只能被消費(fèi)一次

② 將code交給后端

③ 后端拿到code,向微信服務(wù)器發(fā)起請(qǐng)求,拿到openidopenid代表微信用戶在一個(gè)小程序中的唯一標(biāo)識(shí),另外拓展一下unionid代表微信用戶在企業(yè)中的唯一標(biāo)識(shí)

④ 后端查詢數(shù)據(jù)庫(kù)是否存在這個(gè)openid,存在則登錄,返回token;不存在則注冊(cè)賬號(hào),登錄,返回token

一、復(fù)制 AppID 和 AppSecret

去 微信公眾平臺(tái) -> 開發(fā)與服務(wù) -> 開發(fā)管理 :微信公眾平臺(tái) (qq.com)

復(fù)制AppIDAppSecret

二、通過(guò)uni.login() 拿到臨時(shí)憑證code

uni.login({
        provider: 'weixin',
        success: function (loginRes) {
        	//	打印臨時(shí)憑證
        	console.log(loginRes.code)
    	}
});

 另外,可以通過(guò)uni.getUserInfo()獲取到用戶的頭像、昵稱、手機(jī)號(hào)等信息,不過(guò)手機(jī)號(hào)需要企業(yè)身份才可以,如:

// 登錄成功
uni.getUserInfo({
    provider: 'weixin',
    success: function(info) {
        // 獲取用戶信息成功, info.authResult是用戶信息
        const wxUserInfo = info.userInfo
		//	打印頭像url
        console.log(wxUserInfo.avatarUrl)
        //	打印昵稱
        console.log(wxUserInfo.nickName)
        //	打印用戶詳細(xì)信息
        console.log(wxUserInfo)
    }
})

三、后端用臨時(shí)憑證code換取openid

 在spring-web工程中導(dǎo)入maven工具依賴

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.16</version>
</dependency>

在下面工具類中配置自己的AppID,AppSecret后即可使用

import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import org.springframework.web.util.UriComponentsBuilder;
public class WechatUtil {
	//	配置自己的app_id、app_secret
    private static final String APP_ID = "Your_APP_ID";
    private static final String APP_SECRET = "Your_APP_SERCERT";
    public static String getOpenId(String loginCode) {
        String url = "https://api.weixin.qq.com/sns/jscode2session";
        String requestUrl = UriComponentsBuilder.fromHttpUrl(url)
                .queryParam("appid", APP_ID)
                .queryParam("secret", APP_SECRET)
                .queryParam("js_code", loginCode)
                .queryParam("grant_type", "authorization_code")
                .toUriString();
        HttpResponse response = HttpUtil.createGet(requestUrl).execute();
        // 獲取 session_key 和 openid
        JSONObject parseObj = JSONUtil.parseObj(response.body());
        String openid = (String) parseObj.get("openid");
        return openid;
    }
}

 拿到openid之后便可以通過(guò)查詢數(shù)據(jù)庫(kù)實(shí)現(xiàn)一鍵登錄了

到此這篇關(guān)于uniapp實(shí)現(xiàn)微信小程序一鍵登錄的文章就介紹到這了,更多相關(guān)uniapp微信小程序一鍵登錄內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 前端獲取用戶ip信息幾種常見的方法

    前端獲取用戶ip信息幾種常見的方法

    這篇文章主要介紹了幾種在前端頁(yè)面獲取用戶IP地址的方法,包括使用第三方服務(wù)、WebRTC API和服務(wù)器端獲取,每種方法都有其優(yōu)缺點(diǎn),需要根據(jù)具體需求和場(chǎng)景選擇合適的方法,需要的朋友可以參考下
    2025-02-02
  • 一文詳解JavaScript的轉(zhuǎn)碼方式

    一文詳解JavaScript的轉(zhuǎn)碼方式

    JavaScript 轉(zhuǎn)碼是指將 JavaScript 代碼從一種編碼方式轉(zhuǎn)換為另一種編碼方式,常見的轉(zhuǎn)碼方式包括 URL 編碼和 Base64 編碼,解碼是前端比較常見的一種操作,本文就給大家講講JavaScript轉(zhuǎn)碼方式
    2023-09-09
  • js中的referrer返回上一頁(yè)使用介紹

    js中的referrer返回上一頁(yè)使用介紹

    js中的referrer想必大家并不陌生吧,在本文將為大家詳細(xì)介紹其是如何使用的,感興趣的朋友可以參考下,希望對(duì)大家有所幫助
    2013-09-09
  • 11行JS代碼制作二維碼生成功能

    11行JS代碼制作二維碼生成功能

    本篇文章給大家分享了用11行簡(jiǎn)單的JS代碼制作出二維碼生成的簡(jiǎn)單功能,有興趣的朋友參考下。
    2018-03-03
  • 用Javascript實(shí)現(xiàn)UTF8編碼轉(zhuǎn)換成gb2312編碼

    用Javascript實(shí)現(xiàn)UTF8編碼轉(zhuǎn)換成gb2312編碼

    這篇文章主要介紹了用Javascript實(shí)現(xiàn)UTF8編碼轉(zhuǎn)換成gb2312編碼
    2006-12-12
  • javascript 尚未實(shí)現(xiàn)錯(cuò)誤解決辦法

    javascript 尚未實(shí)現(xiàn)錯(cuò)誤解決辦法

    打開頁(yè)面的時(shí)候,F(xiàn)F下一切正常,但是當(dāng)我用IE6測(cè)試的時(shí)候,JS總執(zhí)行不下去了,提示“尚未實(shí)現(xiàn)”,無(wú)論怎么搞就搞不定。
    2008-11-11
  • 前端大文件分片下載具體實(shí)現(xiàn)方法(看這一篇就夠了)

    前端大文件分片下載具體實(shí)現(xiàn)方法(看這一篇就夠了)

    本文介紹了在瀏覽器中下載大文件的技術(shù)方案,包括分片下載、斷點(diǎn)續(xù)傳、進(jìn)度條顯示、取消及暫停下載和文件合并等功能,分片下載可以降低網(wǎng)絡(luò)傳輸中斷的風(fēng)險(xiǎn),并減少內(nèi)存占用,需要的朋友可以參考下
    2024-10-10
  • 小程序中如何繪制思維導(dǎo)圖詳解

    小程序中如何繪制思維導(dǎo)圖詳解

    小程序相信大家應(yīng)該都很熟悉了,對(duì)于小程序的整個(gè)運(yùn)營(yíng)的方法,很多運(yùn)營(yíng)都比較關(guān)注,今天希望通過(guò)一個(gè)思維導(dǎo)圖,這篇文章主要給大家介紹了關(guān)于小程序中如何繪制思維導(dǎo)圖的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • 為什么TypeScript的Enum會(huì)出現(xiàn)問題

    為什么TypeScript的Enum會(huì)出現(xiàn)問題

    TypeScript引入了很多靜態(tài)編譯語(yǔ)言的特性,今天有一個(gè)類型需要著重討論下,這就是enum,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-06-06
  • 微信小程序wx.getUserInfo授權(quán)獲取用戶信息(頭像、昵稱)的實(shí)現(xiàn)

    微信小程序wx.getUserInfo授權(quán)獲取用戶信息(頭像、昵稱)的實(shí)現(xiàn)

    這篇文章主要介紹了微信小程序wx.getUserInfo授權(quán)獲取用戶信息(頭像、昵稱)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論