function a() {
$.ajax({
url : "http://localhost:8080/ubi/checkIntegral",
async : true,
data:{"carOwnerID":"111111"},
dataType : 'json',
type : 'GET',
success : function() {
alert("ss");
},
error : function(map){
alert("FALSE");
}
});
}
@RequestMapping(value="/checkIntegral",method = RequestMethod.GET)
@ResponseBody
public Map<String,Long> checkIntegral(@RequestParam String carOwnerID ,HttpServletRequest request,HttpServletResponse response){
Long integral = impl.checkIntegral(Long.valueOf(carOwnerID));
Map<String,Long> map = new HashMap<String, Long>();
map.put("msg", integral);
return map;
}
Si la demande aboutit et que les données sont renvoyées, cela peut être lié au format incorrect de vos données renvoyées. Parce que vous avez défini
dataType : 'json' pour qu'il attende le type de données renvoyé par le serveur
. Cela conduit souvent au rappelerror
. Veuillez exclure les données renvoyées.dataType : 'json' 预期服务器返回的数据类型
。这样往往会进入error
回调。你排除一下返回数据。而且,
De plus,error
error
a trois paramètres de rappel, veuillez les imprimer vous-même.Affichez votre valeur de retour et voyez les données
HttpServletResponse est en conflit avec le rappel ajax, supprimez simplement HttpServletResponse.
Je vois que votre
dataType : 'json',
exige que le serveur renvoie le format json.Si les données renvoyées par le serveur ne sont pas au format json, elles entraîneront un échec de rappel.
Configurez votre type de données AJAX : "text", puis utilisez alert(data) pour afficher la valeur de retour
Étant donné que les requêtes Ajax sont différentes des réponses, la page n'a pas besoin d'être affichée après avoir obtenu les données, il n'est donc pas nécessaire que RESPONSE passe à une nouvelle page. Il n'est donc pas nécessaire de RETOURNER, mais d'imprimer sur la page demandée via PrintWriter
@RequestMapping(value="/checkIntegral",method = RequestMethod.GET)
@ResponseBody
public void checkIntegral( @RequestParam String carOwnerID, requête HttpServletRequest, réponse HttpServletResponse){
}
Je n'ai pas remarqué que cet ajax est une requête inter-domaines.
Le type de données de votre valeur de retour est json, mais vous lui avez renvoyé une carte en arrière-plan. Convertissez votre carte en json
.