Maison > interface Web > js tutoriel > Résoudre le problème de Spring MVC renvoyant les données JSON à Ajax et signalant l'erreur parseerror

Résoudre le problème de Spring MVC renvoyant les données JSON à Ajax et signalant l'erreur parseerror

亚连
Libérer: 2018-05-22 15:28:40
original
1863 Les gens l'ont consulté

Récemment, lors de l'utilisation d'ajax pour recevoir des données json de spring mvc, une erreur d'analyse se produit toujours. Dans cet article, je vais partager avec vous la solution au problème d'analyse lorsque spring mvc renvoie des données json à des amis ajax qui en ont besoin. peut s'y référer

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: &#39;POST&#39;, 
      url: "groupFunctionEdit", 
      dataType: &#39;json&#39;, 
      contentType: "application/json", 
      data: JSON.stringify(functiondata), 
      success: function(data){ 
        alert(&#39;数据加载成功&#39;+data.msg); 
      }, 
      error: function(xhr, type){ 
        alert(&#39;数据加载失败&#39;); 
        console.log(type); 
      }
Copier après la connexion

Contrôleur backend :

@RequestMapping("/groupFunctionEdit")   
  public @ResponseBody Object groupFunctionEdit(@RequestBody List<YyGroupFunction> yyGroupFunctionList) throws JsonProcessingException{ 
     
    return "success"; 
  }
Copier après la connexion

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

Lorsque vous utilisez un type simple tel que String pour recevoir des données, il n'est pas nécessaire d'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 Mapper les données requises et les convertir 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; 
  }
Copier après la connexion

Les données passées au premier plan la fin devient :

{"msg":"success"}
Copier après la connexion

J'ai compilé ce qui précède pour vous, j'espère que cela vous sera utile à l'avenir.

Articles connexes :

Ajax coopère avec node js multer pour implémenter la fonction de téléchargement de fichiers

Principe du cross-domain Ajax request (Tutoriel texte de la figure)

Méthode de jQuery Validator pour vérifier la soumission du formulaire Ajax et la méthode de transmission des paramètres Ajax (Tutoriel graphique)

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal