

MULTI SERVER HUB MAP WINDOWS
You might have hub.start client side method running on all pages however if its one client opening multiple windows or going from one page to another you will have same connection ID on that hub so you can keep in contact. Its not bad to reopen the connection to the same hub.When you start a hub it gives your client an ID which stays the same for that hub (someone can confirm with example) over multiple pages.There are couple of things according to the context of a multiple pages. To start with Hubs read the WIKI entry for Hubs and Client Side of Hubs.
MULTI SERVER HUB MAP HOW TO
How to create and install X.509 self signed certificates in Windows 10 without user interaction? BUT also best to get your cert installed properly so iOS will work with websockets. You're living dangerously.īetter to use one hub in the first place. Realize that websockets may be unavailable for various reasons, so if you have 4 hubs that are connected on iOS this can still cause blocking.

This wasn't an option for me because I use certain APIs like Facebook / Google / Payment and they require https. Once you have the root cert installed Safari will work with websockets just fine. Without this 'extension' it will install your root the certificate as a profile, but won't allow you to select it for SSL. In the end it turned out I was missing Subject Type=CA in my root cert - which iOS requires. Solution #3Ĭreate a self signed ROOT certificate (CA) and then generate SSL certificates with the domain name from it. This will be fully trusted by Safari, so your connections will get upgraded to real web sockets. Use instead something like letsencrypt - or Cloudflare's argo tunnel to get a publically trusted cert. This is only relevant to debugging, and assumes you're using a https cert which you self-signed. While I hate mixing everything, partial classes help and I personally don't have many SignalR methods anyway. Retry?' I'm switching to a single hub just because of this. If you're not careful you'll end up showing 3 dialog boxes saying 'Connection lost. I also realized that multiple hubs complicates reconnect logic if the connection is lost. If you can get everything down to one hub it's just easier :-) So connections cannot be upgraded to wss, which is why they block at the max of 4.

The problem with iOS is even if you accept a self signed certificate for https traffic - and get a nice little 'lock' symbol in the browser - it doesn't apply to the wss: protocol. Now you'll be able to confirm the fix - run in debug mode, or remove the 'if'. Options.Transports = .HttpTransportType.WebSockets when run in debug mode only WebSockets are allowed This will give you an error in Safari (make sure errors are being caught and shown in an alert dialog).
MULTI SERVER HUB MAP PLUS
Plus setting up HTTP/2 in development isn't necessarily a trivial task.įirst (temporarily) set your hub to only accept websockets. Note: With HTTP/2 this limit is gone but you're probably better off limiting yourself to one hub especially if you're using hot reload. So if I had ONLY three hubs the whole Safari page would lock up with a blue bar.

Notes: Issues with iOS and self signed certificates Unfortunately this is not possible anymore in the new 'Core' version of SignalR
