Fala galera!
Dando continuidade ao tema ASP.NET SignalR o qual comentei aqui já começo a série de exemplos com a configuraçÃo que utilizei me nosso projeto para permitir o uso entre diferentes domínios, o famoso CORS.
public partial class Startup { public void ConfigureSignalR(IAppBuilder app) { IContainer container = ContainerConfig.Configure();</p> <pre><code> var resolver = new Autofac.Integration.SignalR.AutofacDependencyResolver(container); GlobalHost.DependencyResolver = resolver; var config = new HubConfiguration() { Resolver = resolver, EnableDetailedErrors = true, EnableJSONP = true }; var cors = new CorsOptions() { PolicyProvider = new CorsPolicyProvider() { PolicyResolver = context => { var policy = new CorsPolicy(); policy.Origins.Add(@"http://nossaappweb.azurewebsites.net"); policy.AllowAnyMethod = true; policy.AllowAnyHeader= true; policy.SupportsCredentials = true; return Task.FromResult(policy); } } }; app.Map("/signalr", map => { map.UseCors(cors); map.RunSignalR(config); }); } }
Com este método estou fazendo as seguintes configurações:
- Habilitando o SignalR e o uso de CORS para o endpoint /signalr;
Habilitando JXP para browsers legados; - Habilitando a injeção de dependencia utilizando o Autofac;
No próximo post irei mostrar como ficou nosso Hub e uma dica para escapar do Singleton que é implementado por padrão para ele.
Até a próxima!