如何使用SignalR发送页面跳转通知
发表于:2024-10-01 作者:千家信息网编辑
千家信息网最后更新 2024年10月01日,这篇文章主要介绍了如何使用SignalR发送页面跳转通知,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。微信商城使用支付宝支付的时候,需
千家信息网最后更新 2024年10月01日如何使用SignalR发送页面跳转通知
这篇文章主要介绍了如何使用SignalR发送页面跳转通知,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
微信商城使用支付宝支付的时候,需要有个过度页面提示用户用浏览器打开页面去支付,等用户在浏览器支付完之后再打开微信(微信此时依旧显示的是过度页面),过度页面需要跳转到订单详情页面。那么这个过度页面怎么知道需要跳转呢?
目前能想到的就是用SigbalR发送通知告诉那个过度页面去跳转.
第一步,先添加SigbalR相关dll.
第二步,自定义hub
public class myHub:Hub { public override Task OnConnected() { return base.OnConnected(); } }
第三步,自定义UserIdProvider,因为我们需要给指定用户发送跳转的通知
public class CustomerUserIdProvider: IUserIdProvider { public string GetUserId(IRequest request) { //获取当前登录用户 var customer = EngineContext.Current.Resolve().CurrentCustomer; if(customer==null) { return ""; }else { //返回当前登录用户id return customer.Id.ToString(); } } }
第四步,在startup里注册我们自定义的UserIdProvider
//SignlR var idProvider = new CustomerUserIdProvider();GlobalHost.DependencyResolver.Register(typeof(IUserIdProvider), () => idProvider);app.MapSignalR();
第五步,在支付宝支付完成异步通知加上这行代码发送通知,并且传入订单单号参数,这里给order customerid的用户发送通知,order customerid和当前登录者的id是一样的。所以能接收到信息。
var myHub = GlobalHost.ConnectionManager.GetHubContext();myHub.Clients.User(order.OrderCustomerId.ToString()).redirctOrderDetails(order.OrderNumber);
第六步,在在过度页面接受执行
// 声明一个代理引用该集线器,记得$.connection.后面的方法首字母必须要小写,这也是我为什么使用别名的原因var chat = $.connection.chinookHub;// 这里是注册集线器调用的方法,和1.0不同的是需要chat.client后注册,1.0则不需要chat.client.redirctOrderDetails = function (oerderNumber) { _window.location.href = "/Customer/MyOrderDetails?page=4&orderNumber=" + oerderNumber; };chat.client.redirctMoneyAccountDetail = function () { _window.location.href = "/Customer/AccountDetail/Money"; }; // 启动连接$.connection.hub.start();
这样,就可以完美的实现支付完成后跳转页面了。目前没想到更好的办法了。
感谢你能够认真阅读完这篇文章,希望小编分享的"如何使用SignalR发送页面跳转通知"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
页面
支付
用户
篇文章
登录
方法
浏览器
订单
集线器
浏览
不同
没想到
代码
价值
信息
兴趣
别名
办法
单号
原因
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
怎样进入淄博消防专家数据库
数据库连接时的url是什么
2020网络安全宣传地点
关于网络安全手抄报的诗
黑客网络技术qq群
机器产生数据库
湖北应用软件开发需要多少钱
保证网络安全运行
把mq消息推送到数据库表里面
玉米产业技术体系数据库
北京广渠门游戏软件开发公司
辽宁卓宇网络技术研发有限公司
瑞亭网络技术有限公司
本地电脑做网站服务器
网络安全威慑能力
邹城软件开发培训班值得学习
部队如何筑牢网络安全防线
工业软件开发岗位的分类
网络安全典型发言
北京蚂蚁互动网络技术有限公司
3306端口本地服务器无法访问
it什么软件开发好
JAVA中的数据库
居家办公 网络安全
汇鑫融互联网科技有限公司
board服务器是什么意思
用unity做软件开发
我的世界能创造的服务器
网络安全岗位需要自学什么
电视显示服务器没响应