HOME 首頁(yè)
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    如何獲取openid(如何獲取openid 端口是多少)

    發(fā)布時(shí)間:2023-03-22 22:17:19     稿源: 創(chuàng)意嶺    閱讀: 1595        問大家

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于如何獲取openid的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端

    官網(wǎng):https://ai.de1919.com

    如需咨詢小紅書相關(guān)業(yè)務(wù)請(qǐng)撥打175-8598-2043,或微信:1454722008

    本文目錄:

    如何獲取openid(如何獲取openid 端口是多少)

    一、微信獲取code及openid

    wx.getUserProfile({

        desc:'獲取用戶信息',

        success(res) {

            wx.login({

                success(response) {

                    //獲取到code

                    console.log(response.code)

                    /** 用appid,appsecret通過wx.request方法可獲取openid **/

                    var appid = '    ';

                    var secret = '    ';

                    wx.request({

                        url: 'https://api.weixin.qq.com/sns/jscode2session?appid='+appid+'&secret='+secret+'&grant_type=authorization_code&js_code=' + loginCode.code,

                        header: {

                            'content-type': 'application/json'

                        },

                        success: function (response) {

                                console.log(response)

                                console.log(response.data.openid) //獲取openid 

                        }

                    })

                }

            })

        }

    })

    二、H5頁(yè)面靜默授權(quán)獲取微信openid

    前幾天和業(yè)務(wù)談需求的時(shí)候提到了要在微信公眾號(hào)里面做一個(gè)申請(qǐng)頁(yè)面A。當(dāng)時(shí)我對(duì)微信的了解還不是很多,只知道公眾號(hào)上原來已經(jīng)做了一個(gè)其他功能的頁(yè)面B,B頁(yè)面可以獲取到客戶微信的openid。

    當(dāng)時(shí)我們業(yè)務(wù)同事說只有B頁(yè)面可以拿到openid,其他的頁(yè)面都拿不到,所以這個(gè)正在談的A頁(yè)面入口要做在已有頁(yè)面B上,然后通過B獲取openid之后再傳給A。我當(dāng)時(shí)因?yàn)椴欢仓荒苈犓f,畢竟那個(gè)同事說的好像很確定的樣子。

    事后我仔細(xì)想了想,頁(yè)面B也就是個(gè)普通的html呀,憑什么就B頁(yè)面能獲取客戶的openid呢?肯定有方法的!于是我就上網(wǎng)搜了一下,最后成功獲取了自己的openid,下面介紹下方法吧。

    首先,你要有個(gè)微信公眾號(hào),并且要獲得這個(gè)接口的權(quán)限

    點(diǎn)修改之后,在功能設(shè)置的“網(wǎng)頁(yè)授權(quán)域名”處添加可以獲取微信openid的域名,也就是你自己公眾號(hào)里面需要獲取openid網(wǎng)頁(yè)的域名。

    做完上面這些之后,其實(shí)已經(jīng)可以實(shí)現(xiàn)我們想要的效果了,這里因?yàn)槲也皇且鲆粋€(gè)完整的功能,我只是想試驗(yàn)下html的頁(yè)面怎么獲取openid,所以過程比較簡(jiǎn)陋。

    這里是微信官方的網(wǎng)頁(yè)授權(quán)方法:

    其實(shí)看起來微信的說明有那么一大段,但核心的內(nèi)容也就那么一點(diǎn)點(diǎn),總結(jié)下來就是:先拿到code,再用code去換取網(wǎng)頁(yè)授權(quán)access_token。

    因?yàn)橹囟ㄏ虻膗rl要urlEncode,所以這里我用另一個(gè)網(wǎng)站把我要訪問的url轉(zhuǎn)換了一下,網(wǎng)址如下:

    在微信瀏覽器里面輸入下面的url,appid、redirect_uri改成自己的,其他的都可以不用改。

    靜默授權(quán):scope=snsapi_base

    非靜默授權(quán):scope=snsapi_userinfo

    一般在微信中是看不到url也沒辦法輸入url的,所以這里我是用微信開發(fā)者工具調(diào)試的。

    輸入完靜默授權(quán)的url后,url自動(dòng)跳轉(zhuǎn)成有code的,這個(gè)code只有5分鐘有效期。

    同樣的,獲取openid也就是在微信瀏覽器中執(zhí)行一下下面這個(gè)url就可以了。appid,secret換成自己的,code用上面一步獲取的,其他的都不用改。

    運(yùn)行完后的結(jié)果就顯示在左邊這個(gè)圖里啦,你看,openid不就拿到了嗎。

    我沒嘗試非靜默授權(quán)的,不過我想應(yīng)該也差不多吧。這里也不是一套完整的方案告訴大家怎么把這個(gè)部署到前端和后端自動(dòng)獲取openid。我只是想分享一下我試驗(yàn)的經(jīng)歷。

    三、如何獲取查看用戶的openid

    獲取用戶OpenID

    本步驟的作用:

    通過輸入在上一步獲取的Access Token,得到對(duì)應(yīng)用戶身份的OpenID。

    OpenID是此網(wǎng)站上或應(yīng)用中唯一對(duì)應(yīng)用戶身份的標(biāo)識(shí),網(wǎng)站或應(yīng)用可將此ID進(jìn)行存儲(chǔ),便于用戶下次登錄時(shí)辨識(shí)其身份,或?qū)⑵渑c用戶在網(wǎng)站上或應(yīng)用中的原有賬號(hào)進(jìn)行綁定。

    本步驟在整個(gè)流程中的位置:

    目錄

    上一步

    1 請(qǐng)求地址

    2 請(qǐng)求方法

    3 請(qǐng)求參數(shù)

    4 返回說明

    5 錯(cuò)誤碼說明

    下一步

    上一步

    請(qǐng)參見使用Implicit_Grant方式獲取Access_Token

    1 請(qǐng)求地址

    移動(dòng)應(yīng)用:

    WAP網(wǎng)站:

    2 請(qǐng)求方法

    GET

    3 請(qǐng)求參數(shù)

    請(qǐng)求參數(shù)請(qǐng)包含如下內(nèi)容:

    參數(shù)

    是否必須

    含義

    access_token 必須 在Step1中獲取到的access token。

    4 返回說明

    PC網(wǎng)站接入時(shí),獲取到用戶OpenID,返回包如下:

    callback( {"client_id":"YOUR_APPID","openid":"YOUR_OPENID"} );

    WAP網(wǎng)站接入時(shí),返回如下字符串:

    client_id=100222222&openid=1704************************878C

    openid是此網(wǎng)站上唯一對(duì)應(yīng)用戶身份的標(biāo)識(shí),網(wǎng)站可將此ID進(jìn)行存儲(chǔ)便于用戶下次登錄時(shí)辨識(shí)其身份,或?qū)⑵渑c用戶在網(wǎng)站上的原有賬號(hào)進(jìn)行綁定。

    5 錯(cuò)誤碼說明

    接口調(diào)用有錯(cuò)誤時(shí),會(huì)返回code和msg字段,以u(píng)rl參數(shù)對(duì)的形式返回,value部分會(huì)進(jìn)行url編碼(UTF-8)。

    WAP網(wǎng)站接入時(shí),錯(cuò)誤碼詳細(xì)信息請(qǐng)參見:9000-9999:根據(jù)Access Token獲得對(duì)應(yīng)用戶身份的openid時(shí),發(fā)生錯(cuò)誤。

    下一步

    OpenAPI調(diào)用說明

    希望可以幫到您,謝謝!

    四、微信網(wǎng)頁(yè)如何獲取當(dāng)前訪問用戶的OpenID?

    獲取微信用戶的openid的方法如下:

    1、先回復(fù)一條圖文消息,將用戶的openid帶在鏈接上,然后用戶通過點(diǎn)擊圖文消息的鏈接打開最終的頁(yè)面,這么做用戶體驗(yàn)非常非常不好,

    2、調(diào)用服務(wù)號(hào)的高級(jí)接口,可是我們大部分都是用訂閱號(hào),訂閱號(hào)只能通過圖文或文本消息打開網(wǎng)頁(yè),自己傳用戶的openid。

    獲取ID需要注意的問題:

    1、發(fā)圖文塊的時(shí)候,要發(fā)兩條信息,單條是可以被轉(zhuǎn)發(fā)的,兩條的話,用戶就無法轉(zhuǎn)發(fā),只能刪除了。避免用戶將自己的OpenID泄露。

    2、用戶點(diǎn)擊圖文塊的那張頁(yè)面進(jìn)去后,要隱藏右上角的分享圖標(biāo)。

    3、要判斷瀏覽器的UserAgent是否來自于MicroMessage。

    4、如果目標(biāo)頁(yè)面需要分享,要構(gòu)造一個(gè)Form表單,用POST的方式將OpenID傳過去。

    5、實(shí)際項(xiàng)目經(jīng)驗(yàn)中,需要對(duì)傳來的參數(shù)拼在一起,做一下SHA1簽名認(rèn)證。

    6、服務(wù)器能用SSL,就盡量用SSL。

    以上就是關(guān)于如何獲取openid相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    國(guó)外獨(dú)立網(wǎng)站如何建站(歐洲站fba)

    如何申報(bào)個(gè)人專利流程與費(fèi)用(如何申報(bào)個(gè)人專利流程與費(fèi)用明細(xì))

    園林景觀設(shè)計(jì)案例如何分析(園林景觀設(shè)計(jì)案例如何分析出來)

    景觀設(shè)計(jì)主創(chuàng)簡(jiǎn)歷范文(景觀設(shè)計(jì)主創(chuàng)簡(jiǎn)歷范文模板)

    第三方營(yíng)銷公司的方案(第三方營(yíng)銷公司的方案怎么寫)