Une exception se produit lorsque nous transmettons des données en arrière-plan via une réponse en Ajax. Comment la résoudre ? Cet article vous présentera l'analyse du problème de la transmission de données en arrière-plan via une réponse en Ajax. Les amis qui en ont besoin peuvent s'y référer. J'espère que cela pourra aider tout le monde.
Voici le code js :
var System = { getHttpRequest: function(url, callback, options) { if (url.length < 0) return; var option = { url: url, type: "get", dataType: "json", cache: false, timeout: 30000, beforeSend: function(XHR) { }, complete: function(XHR, textStatus) { XHR.abort(); }, error: function(XMLHttpRequest, textStatus, errorThrown) { //alert("网络连接不通,请稍后再试!"); }, success: function(data) { callback(data, options); } }; if ( !! options) { option = $.extend(option, options); } $.ajax(option); } };
Quand je veux obtenir des données via la fonction de rappel avec succès, je renvoie d'abord une chaîne json directement en arrière-plan, et une exception sera signalé. Il n'y a pas de méthode définie ou quoi que ce soit. Après l'avoir vérifié plus tard, j'ai découvert que les données doivent être écrites via la méthode Response.getWriter().write() et que les données peuvent être obtenues avec succès. Le code de fond est le suivant :
public String getRejectReason() throws Exception{ String rowId = getParameterAndPut("rowId",null,0).toString(); String jsonData = ""; if (StringUtils.isNotEmpty(rowId)) { jsonData = newOwnerInfoService.getRejectReasonJsonData(rowId); } this.getResponse().setCharacterEncoding("utf-8"); this.getResponse().getWriter().write(jsonData); return null; }
L'avez-vous appris ? Dépêchez-vous et essayez-le.
Recommandations associées :
Parlez de l'utilisation des deux objets Request et Response
Méthodes de conversion de format de requête et de réponse Http ng d'AngularJS
Exemples de réponse XML PHP et AJAX
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!