Sto utilizzando SignalR 1 con l'applicazione web MVC4 C# con l'autenticazione del modulo. Ho un codice nel mio layout di pagina in JavaScript:disconnetti il client dal lato server signalr
$(documnet).ready(function(){
connect to hub code ...
})
voglio disconnettere un utente forma il mozzo e iniziare a collegare di nuovo dopo che lui fa un login e confermare OK. voglio farlo dal lato server all'interno del mio account di controller e il metodo:
public ActionResult LogOn(LoginModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (System.Web.Security.Membership.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, false);
....here , disconnect from hub
....to make the user reconnect
}
Il motivo che voglio fare è perché SignalR genera un errore se l'utente autenticato cambiato dopo il login e la connessione resta. L'errore è:
L'ID di connessione è nel formato errato.
io chiamo "$ .connectino.hub. inizio();" su ogni stato di documento pronto ... è OK chiamare "$ .connection.hub.stop();" prima ? –
È necessario scaricarlo dal client quando l'utente si connette all'hub e archiviarlo per poterlo confrontare con qualsiasi nuova connessione, in tal modo si evitano anche attacchi di rappresentazione. –