資源簡介
SignalR實現掃碼登錄(B/S,C/S)源碼
下載前你可以先看一下我的博文
https://blog.csdn.net/xy596356456/article/details/109241749
你也可以按照我的文章一步步實現
代碼片段和文件信息
using?Microsoft.AspNet.SignalR;
using?SignalRService.Class;
using?SignalRService.Model;
using?System;
using?System.Collections.Generic;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
namespace?SignalRService
{
????public?class?MyHub?:?Hub
????{
????????///?
????????///?構造時對Program.MyHub賦值
????????///?
????????public?MyHub()
????????{
????????????Program.MyHub?=?this;
????????}
????????///?
????????///?實現推送掃碼成功的用戶信息的方法
????????///?
????????///?
????????///?
????????public?void?SendUserInfo(string?connectionId?string?userInfo)?{
????????????//調用客戶端的?GetUserInfo?方法?返回用戶信息
????????????Clients.Client(connectionId).GetUserInfo(userInfo);
????????}
????????
????????///?
????????///?實現注冊方法
????????///?
????????public?void?Register()
????????{
????????????//獲取UUID
????????????var?UUID?=?Helper.GetUUID();
????????????//查詢用戶
????????????var?client?=?Program.ClientInfoList.Where(u?=>?u.ConnectionId?==?Context.ConnectionId).SingleOrDefault();
????????????if?(client?==?null)
????????????{
????????????????client?=?new?ClientInfo()
????????????????{
????????????????????ConnectionId?=?Context.ConnectionId
????????????????????UUID?=?UUID
????????????????};
????????????????Program.ClientInfoList.Add(client);
????????????}
????????????else
????????????{
????????????????client.UUID?=?UUID;
????????????}
????????????//調用客戶端的?GetUUID?方法?返回UUID
????????????Clients.Client(Context.ConnectionId).GetUUID(Newtonsoft.Json.JsonConvert.Serializeobject(new
????????????{
????????????????IsOk?=?“Y“
????????????????Msg?=?““
????????????????UUID?=?UUID
????????????}));
????????????//Helper.Log(“LoginLog“?+?System.DateTime.Now.ToString(“yyyyMMdd“)?“[Register]????“?+?Newtonsoft.Json.JsonConvert.Serializeobject(client));
????????}
????????
????????///?
????????///?重寫連接事件?目前沒實現功能你可以在這記日志或者干點別的事情
????????///?
????????///?
????????public?override?Task?OnConnected()
????????{
????????????//Helper.Log(“ConnectedLog“?+?System.DateTime.Now.ToString(“yyyyMMdd“)?“[Connected]????[ConnectionId:“?+?Context.ConnectionId?+?“??IP:“?+?Helper.GetClientIp(Context)?+?“]“);
????????????return?base.OnConnected();
????????}
????????///?
????????///?重寫連接斷開事件
????????///?
????????///?
????????///?
????????public?override?Task?OnDisconnected(bool?stopCalled)
????????{
????????????//查詢用戶
????????????var?client?=?Program.ClientInfoList.Where(u?=>?u.ConnectionId?==?Context.ConnectionId).SingleOrDefault();
????????????//判斷用戶是否存在,存在則刪除
????????????if?(client?!=?null)
????????????{
????????????????//刪除用戶
????????????????Program.ClientInfoList.Remove(client);
????????????}
????????????//Helper.Log(“ConnectedLog“?+?System.DateTime.Now.ToString(“yyyyMMdd“)?“[Disconnec
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-10-24?17:51??ScanQRCodeToLogin\
?????目錄???????????0??2020-10-23?16:24??ScanQRCodeToLogin\.vs\
?????目錄???????????0??2020-10-24?15:12??ScanQRCodeToLogin\.vs\config\
?????文件???????85872??2020-10-24?15:12??ScanQRCodeToLogin\.vs\config\applicationhost.config
?????目錄???????????0??2020-10-23?16:24??ScanQRCodeToLogin\.vs\ScanQRCodeToLogin\
?????目錄???????????0??2020-10-23?16:24??ScanQRCodeToLogin\.vs\ScanQRCodeToLogin\v14\
?????文件???????62464??2020-10-24?18:21??ScanQRCodeToLogin\.vs\ScanQRCodeToLogin\v14\.suo
?????目錄???????????0??2020-10-24?18:02??ScanQRCodeToLogin\packages\
?????目錄???????????0??2020-10-24?15:23??ScanQRCodeToLogin\packages\jQuery.1.6.4\
?????文件????????9467??2018-10-14?20:42??ScanQRCodeToLogin\packages\jQuery.1.6.4\.signature.p7s
?????目錄???????????0??2020-10-24?15:23??ScanQRCodeToLogin\packages\jQuery.1.6.4\Content\
?????目錄???????????0??2020-10-24?15:23??ScanQRCodeToLogin\packages\jQuery.1.6.4\Content\sc
?????文件??????214129??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Content\sc
?????文件??????238159??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Content\sc
?????文件???????91669??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Content\sc
?????文件??????241030??2020-10-24?15:23??ScanQRCodeToLogin\packages\jQuery.1.6.4\jQuery.1.6.4.nupkg
?????目錄???????????0??2020-10-24?15:23??ScanQRCodeToLogin\packages\jQuery.1.6.4\Tools\
?????文件?????????914??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Tools\install.ps1
?????文件??????216286??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Tools\jquery-1.6.4-vsdoc-para.js
?????文件????????1455??2011-09-21?17:51??ScanQRCodeToLogin\packages\jQuery.1.6.4\Tools\uninstall.ps1
?????目錄???????????0??2020-10-24?11:23??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\
?????文件????????9473??2018-10-04?21:50??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\.signature.p7s
?????目錄???????????0??2020-10-24?11:23??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\lib\
?????目錄???????????0??2020-10-24?11:23??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\lib\net45\
?????文件???????25808??2013-10-01?20:54??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\lib\net45\System.Web.Cors.dll
?????文件???????24792??2020-10-24?11:23??ScanQRCodeToLogin\packages\Microsoft.AspNet.Cors.5.0.0\Microsoft.AspNet.Cors.5.0.0.nupkg
?????目錄???????????0??2020-10-24?18:02??ScanQRCodeToLogin\packages\Microsoft.AspNet.SignalR.Client.2.4.1\
?????文件???????18694??2019-04-10?11:17??ScanQRCodeToLogin\packages\Microsoft.AspNet.SignalR.Client.2.4.1\.signature.p7s
?????目錄???????????0??2020-10-24?18:02??ScanQRCodeToLogin\packages\Microsoft.AspNet.SignalR.Client.2.4.1\lib\
?????目錄???????????0??2020-10-24?18:02??ScanQRCodeToLogin\packages\Microsoft.AspNet.SignalR.Client.2.4.1\lib\net40\
?????文件??????143408??2019-04-03?00:30??ScanQRCodeToLogin\packages\Microsoft.AspNet.SignalR.Client.2.4.1\lib\net40\Microsoft.AspNet.SignalR.Client.dll
............此處省略336個文件信息
評論
共有 條評論