這篇文章主要介紹了小程序獲取用戶openid的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、加查ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的加查網(wǎng)站制作公司方法一:
先獲取用戶信息(wx.getUserInfo),然后將返回的用戶信息中包含openid的敏感信息解密得到用戶的openid一種是先獲取用戶信息,然后將返回的用戶信息中包含openid的敏感信息解密得到用戶的openid,這種方法獲取用戶openid比較麻煩,還涉及到數(shù)據(jù)解密,而且如果用戶拒絕授權(quán),則獲取不到。這里不細(xì)說此方法,詳見文檔。
方法二:
先登錄(wx.login)獲取用戶登錄憑證(code),然后拿這個code當(dāng)參數(shù)調(diào)用接口,通過后端獲取到用戶的openid。
小程序端代碼如下:
//app.js App({ onLaunch: function() { wx.login({ success: function(res) { if (res.code) { //發(fā)起網(wǎng)絡(luò)請求 wx.request({ url: 'https://test.com/onLogin', data: { code: res.code } }) } else { console.log('獲取用戶登錄態(tài)失?。?#39; + res.errMsg) } } }); } })
后端獲取數(shù)據(jù)方法如下:
//獲取用戶openid function getopenid(){ $js_code = I('post.code'); if(empty($js_code)) return array('status'=>0,'info'=>'缺少js_code'); $appid = 'xxxxxxxxxxxxx'; $appsecret = 'xxxxxxxxxxxxxxxxxxxxxx'; $curl = '/tupian/20230522/jscode2session $curl = sprintf($curl,$appid,$appsecret,$js_code); $result = request($curl); return array('status'=>1,'info'=>json_decode($result,true)); }
數(shù)據(jù)返回說明
//正常返回的JSON數(shù)據(jù)包 { "openid": "OPENID", "session_key": "SESSIONKEY", "unionid": "UNIONID" } //錯誤時返回JSON數(shù)據(jù)包(示例為Code無效) { "errcode": 40029, "errmsg": "invalid code" }
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享小程序獲取用戶openid的方法內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細(xì)的解決方法等著你來學(xué)習(xí)!