隨着手機微信的崛起,騰訊發布的微信聯登確實很誘惑pc端的伙伴們,現在就說說在pc端用微信掃一掃實現微信第三方登陸的方式。(具體代碼U盤)
本文鏈接至:http://blog.csdn.net/hxker/article/details/50260669
https://api.weixin.qq.com/sns/oauth2/access_token?appid=AppID&secret= AppSecret&code=00294221aeb06261d5966&grant_type=authorization_code
這是接口在線調試工具:
這是錯誤碼說明文檔:
另外需要特別注意,如果開發者有在多個公眾號,或在公眾號、移動應用之間統一用戶帳號的需求,需要前往微信開放平台(open.weixin.qq.com)綁定公眾號后,才可利用UnionID機制來滿足上述需求,文檔:
http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html
第一步:請求CODE
第三方使用網站應用授權登錄前請注意已獲取相應網頁授權作用域(scope=snsapi_login),則可以通過在PC端打開以下鏈接:
https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
若提示“該鏈接無法訪問”,請檢查參數是否填寫錯誤,如redirect_uri的域名與審核時填寫的授權域名不一致或scope不為snsapi_login。
參數說明
參數 是否必須 說明 appid 是 應用唯一標識 redirect_uri 是 重定向地址,需要進行UrlEncode, response_type 是 填code, scope 是 應用授權作用域,擁有多個作用域用逗號(,)分隔,網頁應用目前僅填寫snsapi_login即可 ,state 否 用於保持請求和回調的狀態,授權請求后原樣帶回給第三方。該參數可用於防止csrf攻擊(跨站請求偽造攻擊),建議第三方帶上該參數,可設置為簡單的隨機數加session進行校驗返回說明
用戶允許授權后,將會重定向到redirect_uri的網址上,並且帶上code和state參數
redirect_uri?code=CODE&state=STATE
若用戶禁止授權,則重定向后不會帶上code參數,僅會帶上state參數
redirect_uri?state=STATE
請求示例
登錄一號店網站應用
https://passport.yhd.com/wechat/login.do
微信用戶使用微信掃描二維碼並且確認登錄后,PC端會跳轉到
https://passport.yhd.com/wechat/callback.do?code=CODE&state=3d6be0a4035d839573b04816624a415e