AngularSignalR认证问题
创始人
2024-10-29 15:31:40
0
  1. 在服务器端实现SignalR的Token认证逻辑。

  2. 通过使用SignalR的JwtBearer认证提供程序,配置服务器端SignalR发送授权令牌。

  3. 在客户端上使用JwtInterceptor拦截器,将Jwt令牌添加到每个SignalR请求的标头中。 示例: [Authorize] public class ChatHub : Hub { // 必须与前端代码一致 private const string HUB_PATH = "/mychat";

    public async Task SendMessage(string message) { await Clients.All.SendAsync("ReceiveMessage", message); } public override async Task OnConnectedAsync() { // 通过获取JWT令牌,验证并处理请求 var httpContext = Context.GetHttpContext(); var header = httpContext.Request.Headers["Authorization"].ToString();

     // 获取JWT令牌
     var token = header.Split(" ")[1];
    
     // 验证JWT令牌
     var validatedToken = new JwtSecurityToken(token);
    
     // 处理请求,没有问题才能继续
     if (validatedToken.ValidTo > DateTime.Now)
     {
        await base.OnConnectedAsync();
     }
     else
     {
        // 鉴定没过就断开连接
        Context.Abort();
     }
    

    } }

  4. 在Angular app.module.ts文件中,添加JwtInterceptor拦截器: import { HTTP_INTERCEPTORS } from '@angular/common/http'; import { JwtInterceptor } from './jwt.interceptor'; @NgModule({ ... providers: [ ... { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true } ] }) export class AppModule { } 示例: import { Injectable } from '@angular/core'; import { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http'; import { AuthService } from './auth.service'; import { Observable } from 'rxjs'; @Injectable() export class JwtInterceptor implements HttpInterceptor { constructor(private authService: AuthService) { } intercept(request: HttpRequest, next: Http

相关内容

热门资讯

透视科技"hhpok... 透视科技"hhpoker是内部控制吗"详细辅助软件教程(原先是真的有挂)是一款可以让一直输的玩家,快...
透视科技"德普之星透... 透视科技"德普之星透视辅助软件下载"详细辅助实用技巧(其实有挂),支持语音通讯、好友开房及战队组建,...
透视存在"德普之星a... 透视存在"德普之星app安卓版破解版"详细辅助新2025教程(固有真的有挂);大神普及一款德州ai内...
透视安卓版"hhpo... 您好,hhpoker德州作弊这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多...
透视规律"aapok... 透视规律"aapoker辅助工具安全吗"详细辅助安装教程(固有存在有挂);aapoker辅助工具安全...
透视免费"aapok... 此外,数据分析德州(aapoker免费透视脚本)辅助神器app还具备辅助透视行为开挂功能,通过对客户...
透视辅助"wepok... 此外,数据分析德州(wepoker脚本下载)辅助神器app还具备辅助透视行为开挂功能,通过对客户we...
透视代打"wejok... 透视代打"wejoker黑侠辅助器"详细辅助普及教程(往昔真的是有挂)是一款可以让一直输的玩家,快速...
透视苹果版"德州辅助... 《透视苹果版"德州辅助工具到底怎么样"详细辅助辅助教程(起初是有挂)》 德州辅助工具到底怎么样软件透...
透视软件"wepok... 透视软件"wepoker怎么看底牌"详细辅助攻略方法(原先真的有挂)准备好在wepoker怎么看底牌...