Dieses Mal bringe ich Ihnen die AJAX-Get-Anfrage, die in WeChat ungültig ist zurück zur vorherigen Seite, und löse das Problem, dass die AJAX-Get-Anfrage in WeChat ungültig ist, kehren Sie zur vorherigen Seite zurückNotizen Was sind das? Hier sind tatsächliche Fälle.
Lassen Sie mich zunächst die Ursache des Problems analysieren
Als ich kürzlich an einem WeChat-Projekt arbeitete, stieß ich auf eine sehr häufige Situation, die Anforderung Es ist so. Wenn der Benutzer „Mein persönliches Center“ betritt, wird eine Schaltfläche zum Ausfüllen der Zertifizierungsinformationen angezeigt Füllen Sie die Zertifizierungsinformationen aus, nachdem die Informationen erfolgreich übermittelt wurden. Wenn der Benutzer direkt zur vorherigen Seite zurückkehrt. Der Authentifizierungsstatus muss auf „Authentifizierung wird ausgeführt“ geändert werden. Zu diesem Zeitpunkt müssen Sie eine AJAX-Methode verwenden, um den Authentifizierungsstatus abzufragen und die Statusanzeige auf der Seite zu ändern. Zu diesem Zeitpunkt wurde die Ajax-Methode nicht gemäß der Standardmethode geschrieben. Der Front-End-JS-Code lautet wie folgt:
Der Hintergrund Controller erhielt standardmäßig auch GETwindow.onload = function(){ var isProfesser=$('#isProfesser').val(); var isreview=$('#isreview').val(); var userid=$('#myId').val(); if(isProfesser=='0' && isreview=='0'){ $.ajax({ url:"/isAuthenticing", data: {userid:userid}, success: function (data, textStatus, jqXHR) { if(data.result=='1'){ $('#approveadd a').html("+认证中") } }, error: function () { } }); } //getMyQusetionInfo(); }
@RequestMapping(value = "/isAuthenticing", method = RequestMethod.GET) @ResponseBody public Map<String, Object> isAuthenticing(@RequestParam("userid") String userid,HttpServletRequest request) throws IOException { //方法体; }
Lösung Die Praxis hat gezeigt, dass die Verwendung der Get-Methode nicht jedes Mal möglich ist Zurück zur vorherigen Seite wird die Ajax-Methode auf der Seite wie gewohnt ausgeführt, aber der von der Anforderung zurückgegebene Wert ist auch der Wert, als die Seite zuletzt geladen wurde ist mir im Moment nicht klar.
Später, mit der Mentalität, es auszuprobieren, habe ich
POST-Anfrageverwendet. Überraschenderweise verlief der gesamte Prozess reibungslos. Der Front-End-JS-Code lautet wie folgt:
Back-End-Code:window.onload = function(){ var isProfesser=$('#isProfesser').val(); var isreview=$('#isreview').val(); var userid=$('#myId').val(); if(isProfesser=='0' && isreview=='0'){ $.ajax({ url:"/isAuthenticing", data: {userid:userid}, type: 'POST', success: function (data, textStatus, jqXHR) { if(data.result=='1'){ $('#approveadd a').html("+认证中") } }, error: function () { } }); } //getMyQusetionInfo(); }
@RequestMapping(value = "/isAuthenticing", method = RequestMethod.POST) @ResponseBody public Map<String, Object> isAuthenticing(@RequestParam("userid") String userid,HttpServletRequest request) throws IOException { //方法体 }
Empfohlene Lektüre:
Asynchroner Datei- oder Bild-Upload mit AjaxAJAX interagiert mit der Datenbank, um festzustellen, ob der Benutzer dies tut registriertDas obige ist der detaillierte Inhalt vonDie AJAX-Get-Anfrage ist ungültig, wenn in WeChat zur vorherigen Seite zurückgekehrt wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!