網站 asp.net c# 接入QQ第三方登入的方法
網站 asp.net c# 接入QQ第三方登入的方法
1、在qq互聯註冊網站,提交資料 https://connect.qq.com
2、提交網站接入申請,等待幾個工作日後通過稽核,獲得對應的appid與appkey
3、下一步就是使用id和key進行網站的接入開發,開發完成後,提交稽核通過即可
4、網站接入開發簡單整理,首先引入授權js檔案,放到需要實現qq登入的頁面
<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" data-appid="網站應用id" data-redirecturi="http://www.80iter.com" charset="utf-8"></script>
5、網站的接入程式碼方式可以參照官方api文件 http://wiki.connect.qq.com/oauth2-0%E5%BC%80%E5%8F%91%E6%96%87%E6%A1%A3
6、本站基於asp.net 開發,js程式碼如下:
function QQLogin(typeid) { //typeid 1使用者後臺qq繫結 2使用者qq登入 if (QC.Login.check()) { QC.Login.signOut(); } var NickName = ""; var OpenId = ""; var AccessToken = ""; QC.Login.showPopup(); QC.Login.getMe(function (openId, accessToken) { OpenId = openId; AccessToken = accessToken; }); var paras = {}; QC.api("get_user_info", paras).success(function (s) { NickName = s.data.nickname; $.ajax({ url: "/qqlogin", dataType: "json", type: "get", data: "OpenId=" + OpenId + "&NickName=" + NickName + "&AccessToken=" + AccessToken + "&typeid=" + typeid + "&returnUrl=" + window.location.href, error: function (XmlHttpRequest, textStatus, errorThrown) { alert("qq login error...")}, success: function (d) { if (d.result == "1") { if (typeid == "1") { window.location = d.returnval; } else { //登入成功 window.location = d.returnval; } } if (d.result == "0") { //獲取失敗 QC.Login.signOut(); window.location = d.returnval; } } }); }); }c#程式碼如下,僅供參考:
Get["/qqlogin"] = parameters => { string OpenId = ObjectHelper.Get("OpenId"); string NickName = ObjectHelper.Get("NickName"); string AccessToken = ObjectHelper.Get("AccessToken"); string typeid = ObjectHelper.Get("typeid"); string returnUrl = string.IsNullOrEmpty(ObjectHelper.Get("returnUrl")) ? "/" : ObjectHelper.Get("returnUrl"); if (typeid == "1") { //使用者自主繫結qq if (Page.HasLogin) { //繫結關係 return JSONHelper.JsonResult(1, "/user/userSettingBind"); } else { return Response.AsRedirect("/invalid"); } } if (typeid == "2") { //使用者點選登入 Model.SysUser model = bllSysUser.GetLoginUserInfoByQQOpenId(OpenId); if (model != null) { //模擬登入 } else { //沒有賬號繫結過 return ObjectHelper.JsonResult(0, "/resigerqq?OpenId=" + OpenId + "&NickName=" + NickName + "&AccessToken=" + AccessToken); } } return ObjectHelper.JsonResult(1, returnUrl); };7、另外本站使用的是自定義圖示和a標籤的方式開啟qq登入,還有官方另外一種js寫法:
這種js方式是使用系統自帶按鈕登入,但是這樣會彈出新視窗,不喜歡 //呼叫QC.Login方法,指定btnId引數將按鈕繫結在容器節點中 QC.Login({ //btnId:插入按鈕的節點id,必選 btnId:"qqLoginBtn", //使用者需要確認的scope授權項,可選,預設all scope:"all", //按鈕尺寸,可用值[A_XL| A_L| A_M| A_S| B_M| B_S| C_S],可選,預設B_S size: "B_M" }, function(reqData, opts){//登入成功 console.log(reqData, opts); }, function(opts){//登出成功 alert('QQ登入 登出成功'); });
8、這樣就實現了qq登入
由請喊我大龍哥最後編輯於:2年前
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- 社會化登入分享-QQ SDK接入
- 基於 QQ 第三方登入
- php使用第三方QQ登入PHP
- Java實現QQ第三方登入Java
- 第三方網站整合釘釘登入網站
- 【網頁登入】QQ 登入、微信登入、微博登入、GitHub 登入網頁Github
- laravel實現第三方qq一鍵登入Laravel
- QQ第三方登入認證流程(乾貨)
- JAVA接入支付寶授權第三方登入Java
- 簡單實現第三方qq登入和分享
- 封裝QQ、微信、微博的第三方登入和分享封裝
- 蘋果稽核被拒——第三方QQ登入的五種情形蘋果
- C#開發——網站應用微信登入開發C#網站
- .netcore第三方登入授權:10分鐘急速接入NetCore
- 網站登入JWT的實現網站JWT
- 模板方法模式,從網站登入開始說起模式網站
- 第三方賬號登入功能接入全流程分析(轉)
- Java QQ授權第三方登陸Java
- 如何用python登入qqPython
- [API 寫法] QQ 登入、微信登入、Facebook、google、蘋果登入APIGo蘋果
- 關於QQ授權登入
- 【新版】使用 go-cqhttp 掃碼登入,一鍵接入 ChatGPT 機器人到 QQ 群GoHTTPChatGPT機器人
- Python自動登入QQ的實現示例Python
- 登入介面(C#)C#
- 網頁,網站點選qq圖示,加qq,開啟對方qq的網頁程式碼網頁網站
- 如何用Python爬取需要登入的網站?Python網站
- QQ信任登入(PC端 )申請
- 快速爬取登入網站資料網站
- 修改預設登入網站密碼?網站密碼
- ASP.NET登入驗證ASP.NET
- 網站登入密碼admin怎麼修改,如何安全地修改網站管理員登入密碼網站密碼
- 微信網頁授權登入(c# Webform)網頁C#WebORM
- 有關於 QQ api 的文章網站API網站
- 網站修改登入密碼?如何修改網站後臺資訊?網站密碼
- 第三方登入原理
- win10系統ie登入網站不顯示網站登入對話方塊怎麼辦Win10網站
- 關於QQ郵箱登入提示一鍵登入解決方案
- QQ模擬登入實現後篇