1. 程式人生 > >二維碼app掃碼後登入其它形態系統

二維碼app掃碼後登入其它形態系統

今天我們就介紹一下,如何使用微信應用內二維碼掃描功能,掃描PC端網站  彈出二維碼   實現PC端網站自動登入功能。

我們直入主題。

PC端微信二維碼掃碼登入實現思路

1. 首先要保證每次彈出的二維碼是唯一的。例如我們可以在程式內部,通過session_id 與與彈出的二維碼做一定關聯。(即微信oauth授權網址 callback 中要帶有當前PC端使用者session_id,且callback URL應與 PC網站同域)---未登入何來當前使用者?

2. 其次當展現二維碼的同時,要執行一個PC端網頁非同步輪詢xmlhttprequest (ajax ) ,定時輪詢後臺  

斷手機微信端是否有成功登入標記。(此標記是標記進入資料庫還是其它儲存介質?)

3. 當用戶在微信掃碼,並授權登入後,微信攜帶openid 資訊跳轉到 callback URL,此時callback URL 引數中帶有PC端session_id ,根據session_id ,關聯設定使用者登入狀態。(通過執行的call-back URL,URL根據二維碼中的引數?才能知道當前掃碼是什麼場景?)

4. PC端非同步輪詢請求獲得已登入訊息,重新整理\跳轉PC端網頁。

=====

php 微信掃碼 pc端自動登陸註冊 用的介面scope 是snsapi_userinfo,微信登陸一個是網頁授權登陸,另一個是微信聯合登陸

網頁授權登陸:http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

微信聯合登陸:https://open.weixin.qq.com/cgi-bin/frame?t=home/web_tmpl&lang=zh_CN

一:首先把微信連結帶個標識生成二維碼

比如連結為 https://open.weixin.qq.com/connect/oauth2/authorize?appid=’.$appid.’&redirect_uri=’.$url.’&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect’  

我們可以在state上做文章,因為state你傳入什麼微信那邊返回什麼

可以作為伺服器與微信 的一個標識

public function creatqrAction(){ if($_GET['app']){ $wtoken=$_COOKIE['wtoken']; $postdata=$_SESSION['w_state']; if($wtoken){ $postdata=$wtoken; } <span style="color: #3366ff;">include CONFIG_PATH . 'phpqrcode/'.'phpqrcode.php';</span> $sh=$this-shar1(); $value="https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx138697ef383a9167&amp;redirect_uri=http://www.xxx.net/login/wcallback&amp;response_type=code&amp;scope=snsapi_userinfo&amp;state=".$postdata."&amp;connect_redirect=1#wechat_redirect"; $errorCorrectionLevel = "L"; $matrixPointSize = "5"; 微信掃碼後得到URL,其本質是請求url  QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize); } }

這樣我們設定了回撥地址http://www.xxx.net/login/wcallback

就可以在wcallback方法裡面處理資料 插入使用者 生成session,跳轉登陸,pc端可以設定幾秒鐘ajax請求伺服器,一旦獲取到了

state,即實現調整,微信瀏覽器裡處理完後可以關閉視窗,微信js可實現

document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { WeixinJSBridge.call('closeWindow'

相關推薦

app登入其它形態系統

今天我們就介紹一下,如何使用微信應用內二維碼掃描功能,掃描PC端網站  彈出二維碼   實現PC端網站自動登入功能。 我們直入主題。 PC端微信二維碼掃碼登入實現思路 1. 首先要保證每次彈出的二維碼是唯一的。例如我們可以在程式內部,通過sessio

快速優化方案介紹(一)--怎麽在光線不足時,手機自動進行補光。

ram 平時 implement chang fill change rri ren text 二維碼掃碼已經是一個很通用的技術了,也有很多的開源項目可以實現,比如Zxing項目。https://github.com/zxing 這裏重點不是介紹Zxing中是怎麽樣來實現二

視訊轉換生成直接播放,線上製作,一鍵上傳

如何視訊生成二維碼,掃描就能看到視訊?最好不要有廣告?  先和大家說一下原理。二維碼本身可以儲存資訊,例如儲存視訊的URL。當掃描二維碼的時候,手機會先獲取二維碼儲存的URL,然後自動在瀏覽器中開啟URL,所以就能看到視訊。微信和QQ內建的都是QQ瀏覽器,所以原理也是一樣的

PHP微信支付--接入支付SDK,生成訂單進行支付

在PHP開發微信支付中接入支付SDK,生成訂單二維碼進行掃碼支付,實際運用中做出一些整理,以便後期查閱。整體流程如下圖; 微信支付官方流程:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_5 1、當我們選擇使用掃碼支付,

php技術 網站PC端用手機APP實現登入

去年做的功能,整理一下分享出來 如淘寶,騰訊等網站登入頁面,都有APP掃碼登入這個功能,去年也做了一個,基於自己的APP實現, 並非第三方登陸. 思路:1. 生成一個二維碼, 二維碼連結帶有金鑰. 2. 用資料庫表記錄這次的金鑰, 方便APP返回使用者ID時比對. 3. 前

javaweb實現app登入

1.web頁面主動向伺服器索要一張由伺服器生成包含維一標識的二維碼圖片,也可以直接向後臺索要一個維一標識,拿到標識後通過js生成二維碼.這裡本人採用的是第二種方式,至於為什麼嗎,個人感覺這樣方便,後臺

ZXing實現生成不帶logo的和帶logo的以及功能

先吐槽下,CSDN的新介面真是看得我不順眼,連HTML編輯器都用不了咯,回頭看以前寫的部落格,介面真是亂七八糟的,這一下子得有多少人不適應,搞什麼東東呢,而且上傳不了資源了,部落格的demo上傳不了咯,

關於安卓zxing時出現閃退的一點心得

        是這樣的,我最近手頭接了個專案,給一個掃碼機編寫一個APP,裡面有用到二維碼掃描解析的功能,就用了zxing的庫,準確的說是參考了 yipianfengye 大佬的文章和專案。當時有遇到個奇怪的現象,在使用中APP會出現閃退的現象。我當時是用的大佬專案中的Ca

外部app進入自己app的下載頁面

場景: 使用者使用手機app掃描自己產品的二維碼。 預期結果: 1.         如果使用者使用的是本公司的app,則會獲取到二維碼上產品資訊,按照app既定的流程走下去。 2.         如果使用者使用的是非本公司的app(例如:微信掃碼等),那麼會跳轉至App

長連結實現app上傳

日常專案總結2 拖延症拖到現在,之前做的app端掃碼上傳的專案,今天突然想要整理記錄下來。 1、整體實現過程圖 1)後端返回二維碼 2)APP使用者掃碼 3)APP上傳圖片到圖片伺服器 4)圖片伺服器返回圖片資訊 5)APP將圖片返回給

Android 快速實現掃描識別(即登入功能)

IG牛逼l 零封G2!給RNG報仇了! 掃碼登入現在很流行,淘寶,京東,熊貓直播各大網站都有掃碼登入功能,其實呢對於客戶端來說掃碼登入很簡單,因為難點都集中在了前端身上,我簡單講下掃碼登入的流程: 1 客戶端掃碼然後開啟掃碼確認頁面(H5頁面,這個時候要把使用者的

微信生成帶引數的,合成海報,推送小程式

背景:公司開發的小程式要實現將產品免費給使用者試用的功能,使用者登入小程式後在產品頁可以將產品以二維碼海報的方式分享給微信好友,好友掃碼後跳轉公眾號,關注後公眾號推送小程式,點選小程式後跳轉到小程式中的相應產品頁面。 如下圖: 這裡涉及到兩個重要的環節: 1.生成帶

微信登陸(1)---登入流程講解、獲取授權登陸

掃碼登入流程講解、獲取授權登陸二維碼 具體流程可以看微信官網的掃碼登入文件 其實官方文件已經講的非常清楚而且講的也很明白。 一、掃碼登入流程講解 1、首先準備工作 網站應用微信登入是基於OAuth2.0協議標準構建的微信OAuth2.0授權登入系統。 在進行微信OAuth2.在進行微信OAut

登入(三)登入

承接上篇部落格,在進行二維碼生成之後,app進行掃碼,掃碼成功之後,手機點選登入,進行繫結登入關係,後臺做自動關聯與自動登入。1,掃碼登入頁面此頁面是模擬app登入頁面,功能是掃到二維碼後,自動跳轉授權頁面,授權成功,呼叫後臺服務進行登入關係繫結               

Java實現下載app流程

1.先生成一個二維碼(二維碼裡面包含了下載的地址資訊,推薦用二維碼裡面包含是過濾器網站,安全),在草料網https://cli.im/ 進行生成,這裡我們生成網址 2.生成後就可以下載,然後放到你的網址上,供掃碼下載app(在跳轉過濾器中間設定識別ios跟Android等裝

修改微信登入樣式

開工後的第一篇部落格,記得在去年給自己定的計劃是每月一篇部落格,看來有點沒有持之以恆,抱歉…,進入正題: 過完年來一直在趕專案進度,期間也遇到很多問題,很想把它分享出來,時間問題吧,沒有及時寫出來,今

java實現下載APP

1.需要的元件   /**      * 生成二維碼(QRCode)圖片的公共方法      * @param content 儲存內容      * @param imgType 圖片型別      * @param size 二維碼尺寸      * @ret

WebSocket實現app掃描登入

後臺框架採用SpringMVC,不同的框架可根據邏輯更改即可: 【思路】- PC端生成二維碼,二維碼包含uuid(全域性唯一識別符號),且打通websocket通道,等待伺服器返回登入成功資訊;APP掃描二維碼,獲取uuid及登入資訊,推送給服務端,處理後的登入資訊通過we

使用websocket實現手機掃描PC端,移動端canvas手繪簽名確定將圖片同步到PC端 及時更新圖片

這個Demo我放到線上啦,大家可以試一下(前端是用vue寫的,後臺是用springboot寫的 還處於學習階段  幫不到各位大神也請各位輕點噴我們首先看下效果,我把圖截下來來:1.這個是線上地址開啟的頁面2.這是掃描二維碼後手機開啟的介面(不要用微信去掃,微信顯示不安全  用

JAVA實現登入

實現客戶端掃碼登入分為下列四步: 1. Web頁面生成二維碼 生成的二維碼中必須要包含一個用於唯一標識使用者的資料,這個唯一標識是為了確保將客戶端(手機)與web網頁繫結,避免其他人登入了你的賬號。在這裡可以生成以個隨機的guid作為唯一標識。 生成