2012-07-02 4 views
3

Je construis une application MVC qui utilise l'authentification Windows. Je veux gérer un événement de changement dropdownlist en faisant un post sur le serveur avec Jquery post.401 Erreur non autorisée avec Jquery post et MVC

Ci-dessous la méthode du contrôleur que je veux invoquer:

[HttpPost] 
public JsonResult UpdateConversion(int conversionId, int? conversionStandardId) 
{ 
    // Some statements here 
} 

Et ci-dessous est la fonction javascript qui gère l'événement onchange de la liste déroulante:

function onConversionValueChange() { 
    var input = $(this); 
    var conversionId = input.attr('id').replace('ConversionFor', ''); 
    var selectedValue = input.val(); 

    if (selectedValue == '') { 
     $.post(Conversions._UpdateConversionURL, { conversionId: conversionId }, onConversionValueChanged); 
    } 
    else { 
     $.post(Conversions._UpdateConversionURL, { conversionId: conversionId, conversionStandardId: selectedValue }, onConversionValueChanged); 
    } 
} 

Je ne pense pas qu'il y ait quelque chose mal avec ces méthodes, parce que lorsque je charge la page initialement et que je fais le changement, le post-appel fonctionne plusieurs fois. Mais après un certain temps, il appelle le message 3 fois dans un seul événement et retourne 401 erreur non autorisée sur chacun d'entre eux. Bien que le troisième appel semble avoir réussi.

Post call error

Tout le monde peut me aider? Merci.

Répondre

4

C'est exactement comme ça que fonctionne l'authentification Windows (NTLM). C'est un schéma d'authentification challenge/réponse où le client envoie une requête, le serveur défie le client de prouver qu'il possède les informations d'identification correctes en générant un nonce, puis le client s'authentifie. Vous pouvez en lire plus ici:

Normalement, une fois authentifié, l'agent utilisateur ne devrait pas avoir à passer par toutes les phases des demandes suivantes et devrait pouvoir directement envoyer les informations d'authentification.

+0

ah ok, donc ce n'est pas une erreur. Merci pour l'aide! –

Questions connexes