Uso de Blazor como cliente. NET 6 tanto en el cliente como en el servidor.
Ya he estado intentando cualquier posible solución durante horas para esto y estoy atascado. El lado del cliente y el lado del servidor están en el mismo servidor (respaldado por wasm) pero no funciona cuando intenta conectarse al servidor a través de un dominio remoto, no localhost, que funcionó en la etapa de desarrollo.
Me he estado preguntando acerca de CORS, pero tengo mi CORS configurado correctamente y sigue igual, incluso si llamo al método AddAuthentication. Además, he intentado habilitar el servicio Websocket en funciones adicionales en IIS. Tenga en cuenta que estoy ejecutando esto en el servidor con publicación dotnet.
Detalles del websocket del lado del cliente: 
Configuraciones relevantes del lado del servidor en el servidor que pueden afectar esto:
En appsettings.json:
{ "Kestrel": { "EndPoints": { "Http": { "Url": "https://0.0.0.0:443" } } },En Inicio/Programa
// CORS (before SignalR) builder.Services.AddCors(options => options.AddDefaultPolicy(builder => builder.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod())); //Add SignalR builder.Services.AddSignalR(opt => { opt.EnableDetailedErrors = true; opt.HandshakeTimeout = TimeSpan.FromSeconds(120); }); ; builder.Services.AddResponseCompression(opt => { opt.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[] { "application/octet-stream" }); }); // SignalR response compression app.UseResponseCompression(); // log requests statuses in console if (true) { app.Use(async (context, next) => { await next.Invoke(); Console.WriteLine( $"{DateTime.Now.Hour} : {DateTime.Now.Minute} : {DateTime.Now.Second} - response: {context.Response.StatusCode}"); }); } // Handles exceptions and generates a custom response body app.UseExceptionHandler("/errors/500"); // Handles non-success status codes with empty body app.UseStatusCodePagesWithReExecute("/errors/{0}"); app.UseHttpsRedirection(); app.UseBlazorFrameworkFiles(); app.UseStaticFiles(); // CORS app.UseCors(); app.UseRouting(); app.UseAuthentication(); app.UseAuthorization(); app.MapControllers(); // Blazor app.MapFallbackToFile("index.html"); // Map SignalR Hubs app.UseEndpoints(endpoints => { endpoints.MapHub<SmsHub>("/smshub"); }); Múltiples códigos de estado 204 registrados en el servidor (debido a esto), lo que no debería estar sucediendo: 
NOTA IMPORTANTE: como puede notar, en algunos casos, el OnConnectedAsync del concentrador se llama y se registra con la información que proporciona el usuario. Tal vez en algunos de los diferentes métodos que se intentan conectar al socket, pero cerrar la ventana del navegador no finalizará esa conexión hasta que se agote el tiempo de espera. Finalmente, quiero agregar este ejemplo de servidor en vivo que usa el proxy de Cloudflare, pero no tiene nada que ver con él.
Otorgaré la respuesta válida. Gracias.
Intente habilitar la compatibilidad con Websocket en IIS. Mira esto...
No estoy seguro si esto ayuda. Pero haz el equivalente .net 6 de esto:
readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins"; options.AddPolicy(name: MyAllowSpecificOrigins, builder => { builder.WithOrigins("https://*******************").AllowAnyHeader().AllowAnyMethod().AllowCredentials(); }); app.UseCors(MyAllowSpecificOrigins);Tuve algunos problemas de cors con errores no descriptivos y la definición explícita del origen lo resolvió.
Buenas noticias.
Es bastante obvio que el problema no ocurre con el servicio Azure SignalR y sí, no ocurre. Pero de todos modos no es la solución correcta, además te cuesta 50 dólares al mes.
Abra su cmd con el administrador. Ejecute debajo del comando y pruebe.
netsh http add urlacl url=https://<your_ip_addr>:443/ user="NT AUTHORITY\Authenticated Users"