Maison >interface Web >js tutoriel >Comment gérer les erreurs lors du renvoi des données JSON à Ajax dans Spring MVC

Comment gérer les erreurs lors du renvoi des données JSON à Ajax dans Spring MVC

php中世界最好的语言
php中世界最好的语言original
2018-03-31 17:00:501729parcourir

Cette fois, je vais vous montrer comment gérer les erreurs lors du renvoi de données json à ajax dans spring mvc. Quelles sont les précautions pour la gestion des erreurs lors du renvoi de données json à ajax dans spring mvc. cas pratique. Levez-vous et jetez un œil.

Récemment, lors de l'utilisation d'ajax pour recevoir des données json de Spring MVC, une erreur d'analyse se produit toujours. Le code source de l'erreur est le suivant :

Front-end :

$.ajax({ 
      type: 'POST', 
      url: "groupFunctionEdit", 
      dataType: 'json', 
      contentType: "application/json", 
      data: JSON.stringify(functiondata), 
      success: function(data){ 
        alert('数据加载成功'+data.msg); 
      }, 
      error: function(xhr, type){ 
        alert('数据加载失败'); 
        console.log(type); 
      }
Contrôleur backend :

@RequestMapping("/groupFunctionEdit")   
  public @ResponseBody Object groupFunctionEdit(@RequestBody List<YyGroupFunction> yyGroupFunctionList) throws JsonProcessingException{ 
     
    return "success"; 
  }

Interrogez les données et trouvez la réponse suivante :

Lorsque vous utilisez un type simple tel que String pour recevoir des données, il n'est pas nécessaire pour utiliser l'annotation @RequestBody.

Ici, vous devez utiliser spring mvc pour traiter le package jar dépendant de json : jackson.databind.jar

Solution :

Le front-end n'a pas besoin d'être modifié, il est en arrière-plan Encapsulez les données requises avec map et convertissez-les en type String :

@RequestMapping("/groupFunctionEdit")   
  public @ResponseBody Object groupFunctionEdit(@RequestBody List<YyGroupFunction> yyGroupFunctionList) throws JsonProcessingException{ 
     Map<String,Object> map = new HashMap<String,Object>(); 
     map.put("msg", "success"); 
     ObjectMapper mapper = new ObjectMapper(); 
     String msg = mapper.writeValueAsString(map); 
    return msg; 
  }
Les données transmises au front-end deviennent :

{"msg":"success"}
puis utilisez jQuery pour l'analyser, non Signaler une erreur.

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

Comment implémenter la barre de menus de liaison à trois niveaux d'ajax

Explication détaillée des données ajax étapes de traitement (avec code )

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn