2010-04-23 7 views
0

J'ai dotnetopenauth fonctionne bien en tant que fournisseur, sauf si un utilisateur clique sur le bouton soumettre plusieurs fois. Ensuite, l'erreur suivante se produit:dotnetopenauth demande en attente perdue

Throw New InvalidOperationException (« Il n'y a pas de demande d'authentification en attente! »)

Quelle est la meilleure façon d'éviter que cela se produise?

Répondre

0

Je suppose que vous utilisez ProviderEndpoint.PendingAuthenticationRequest pour stocker la demande, qui est automatiquement effacée après l'envoi de la réponse. Il est donc logique qu'un double-clic accidentel entraîne cette erreur. Pour éviter que cela ne se produise, vous devez décider de la durée de stockage d'une réponse dans la session de l'utilisateur et la stocker vous-même, peut-être juste avant d'envoyer la première réponse. Puis en utilisant cela au lieu de ProviderEndpoint.PendingAuthenticationRequest.

+0

Merci Andrew. – Graham