欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

微信小程序如何實(shí)現(xiàn)登錄功能-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)微信小程序如何實(shí)現(xiàn)登錄功能,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司提供網(wǎng)站設(shè)計(jì)和自適應(yīng)建站服務(wù)。團(tuán)隊(duì)由有經(jīng)驗(yàn)的網(wǎng)頁(yè)設(shè)計(jì)師、程序員和市場(chǎng)專(zhuān)家組成,能夠提供從H5頁(yè)面制作,網(wǎng)站制作,廣告投放,模板建站到小程序制作等全方位服務(wù)。 以客戶(hù)為中心,致力于為客戶(hù)提供創(chuàng)新、高效的解決方案,幫助您打造成功的企業(yè)網(wǎng)站。

注冊(cè)/登錄

小程序端" style="margin: 0.8em 0px; padding: 0px; box-sizing: border-box; font-weight: 100; line-height: 1.3em; font-size: 2.13em;">小程序端:

通過(guò)上面wx.login和wx.getUserInfo兩個(gè)api拿到相應(yīng)的信息,并通過(guò)上方接口傳給自己的服務(wù)器.

需要傳輸?shù)男畔⒂?個(gè)參數(shù):

appid  小程序標(biāo)識(shí)
secret  小程序的 app secret
js_code  //wx.login登錄時(shí)獲取的 code,用于后續(xù)獲取session_key

//下面兩個(gè)參數(shù)用戶(hù)服務(wù)器端簽名校驗(yàn)用戶(hù)信息的
signature 使用 sha1( rawData + sessionkey ) 得到字符串,用于校驗(yàn)用戶(hù)信息。
rawData  不包括敏感信息的原始數(shù)據(jù)字符串,用于計(jì)算簽名。

//下面兩個(gè)參數(shù)是用于解密獲取openId和UnionId的
encryptedData  包括敏感數(shù)據(jù)在內(nèi)的完整用戶(hù)信息的加密數(shù)據(jù)
iv 加密算法的初始向量
當(dāng)然,可以精簡(jiǎn)為以下三個(gè)參數(shù). 
其余的簽名校驗(yàn)的參數(shù)可省略,而appid和secret可以直接寫(xiě)在服務(wù)器.
js_code //  wx.login登錄時(shí)獲取的 code,用于后續(xù)獲取session_key
encryptedData  包括敏感數(shù)據(jù)在內(nèi)的完整用戶(hù)信息的加密數(shù)據(jù)
iv 加密算法的初始向量

服務(wù)端處理邏輯

相關(guān)的信息傳輸給服務(wù)器后,服務(wù)器

1.先根據(jù)js_code去微信服務(wù)器拿到session_key
2.(此步可省略)使用 sha1( rawData + sessionkey )拿到字符串,判斷與signature值是否相同,如果相同則用戶(hù)信息無(wú)誤,可進(jìn)行下一步.如果不同,則說(shuō)明用戶(hù)信息被篡改或過(guò)期.
3.然后根據(jù)解密算法自行解密(輸入?yún)?shù)為appId,sessionKey,encryptedData,iv,返回一個(gè)jsonObj),拿到openId和unionId等信息,執(zhí)行服務(wù)器端的注冊(cè)/登錄操作.
4.注冊(cè)/登錄操作邏輯完成后,將我們服務(wù)器的sessionId(或其他token),以及用戶(hù)信息返回給客戶(hù)端.

其中,服務(wù)器去獲取session_key的請(qǐng)求為:

(小寫(xiě)為固定寫(xiě)好的,大寫(xiě)為待替換的)
/tupian/20230522/jscode2session>  //正常返回的JSON數(shù)據(jù)包     {           "openid": "OPENID",           "session_key": "SESSIONKEY"           "expires_in": 2592000     }     //錯(cuò)誤時(shí)返回JSON數(shù)據(jù)包(示例為Code無(wú)效)     {         "errcode": 40029,         "errmsg": "invalid code"     }

相關(guān)解密算法:

https://mp.weixin.qq.com/debug/wxadoc/dev/api/signature.html

注意:示例代碼中有node,c++,php,python的,沒(méi)有java的.

需要服務(wù)器返回的信息:

sessionId/token 登錄狀態(tài)標(biāo)識(shí)
userInfo: jsonObject,用戶(hù)在我們平臺(tái)上的信息,其內(nèi)容與getPersonalInfo接口返回的相同.


最后,將登錄操作封裝成方法,需要處調(diào)用即可

//最終供外面調(diào)用的方法
function login(){
    console.log('logining..........');
    //調(diào)用登錄接口
    wx.login({
        success: function (e) {
            console.log('wxlogin successd........');
            var code = e.code;
            wx.getUserInfo({
                success: function (res) {
                    console.log('wxgetUserInfo successd........');
                    var encryptedData = encodeURIComponent(res.encryptedData);
                    thirdLogin(code,encryptedData,res.iv);//調(diào)用服務(wù)器api
                }
            })
        }
    });
}
function  thirdLogin(code,encryptedData,iv){
    var url = "eeee/xxx/login/ttttt";
    var params = new Object();
    params.code = code;
    params.encryptedData = encryptedData;
    params.iv =iv;
    buildRequest(new Object(),url,params,{
        onPre: function(page){},
        onSuccess:function (data){
            console.log('my  login successd........');
            console.log(data);
            getApp().globalData.session_id = data.session_id;
            getApp().globalData.uid = data.uid;
            getApp().globalData.isLogin = true;
        },
        onError : function(msgCanShow,code,hiddenMsg){
        }
    }).send();
}

關(guān)于“微信小程序如何實(shí)現(xiàn)登錄功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

名稱(chēng)欄目:微信小程序如何實(shí)現(xiàn)登錄功能-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)于:http://chinadenli.net/article30/epgpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)公司自適應(yīng)網(wǎng)站、品牌網(wǎng)站建設(shè)響應(yīng)式網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
蜜臀人妻一区二区三区| 黄片三级免费在线观看| 久久福利视频这里有精品| 欧美成人欧美一级乱黄| 国产精品制服丝袜美腿丝袜| 亚洲综合激情另类专区老铁性| 日本在线视频播放91| 欧美日韩乱码一区二区三区| 久久99一本色道亚洲精品| 日韩欧美精品一区二区三区| 久久黄片免费播放大全| 五月婷婷六月丁香在线观看| 好吊妞视频这里有精品| 激情亚洲一区国产精品久久| 国产主播精品福利午夜二区| 成年女人下边潮喷毛片免费| 又大又紧又硬又湿又爽又猛| 中文字幕精品人妻一区| 狠狠做深爱婷婷久久综合| 亚洲国产av国产av| 精品国自产拍天天青青草原| 在线观看国产成人av天堂野外| 视频在线播放你懂的一区| 中文字幕欧美精品人妻一区| 亚洲高清欧美中文字幕| 日本中文字幕在线精品| 91麻豆精品欧美视频| 日韩成人午夜福利免费视频| 欧美韩日在线观看一区| 91欧美亚洲精品在线观看| 少妇熟女精品一区二区三区| 在线观看国产成人av天堂野外| 91久久精品国产一区蜜臀| 亚洲中文字幕三区四区| 日韩在线视频精品视频| 国产女高清在线看免费观看| 99久久免费中文字幕| 亚洲国产成人一区二区在线观看| 老鸭窝老鸭窝一区二区| 人妻中文一区二区三区| 午夜精品福利视频观看 |