DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> AJAX入門 >> AJAX基礎知識 >> 解決微信返回上一頁,頁面中的AJAX的請求,對Get請求無效的問題
解決微信返回上一頁,頁面中的AJAX的請求,對Get請求無效的問題
編輯:AJAX基礎知識     

先給大家分析問題產生原因

      最近在做一個微信的項目時,遇到一種很常見的情況,需求是這樣的,當用戶進入到“我的個人中心”的時候,會有一個點擊跳轉填寫認證資料的按鈕,點擊此按鈕後,會跳轉到認證資料填寫頁面,填寫資料,提交成功後。當用戶直接返回到上一頁的時候。需要修改認證狀態為“認證中”。此時需要使用一個AJAX方法去查詢認證狀態,並修改頁面的狀態顯示。

當時沒有按照標准的方法寫ajax方法,默認使用的方法是Get請求,前台JS代碼如下:

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},
     success: function (data, textStatus, jqXHR) {
      if(data.result=='1'){
        $('#approveadd a').html("+認證中")
      }
     },
     error: function () {
     }
   });
  }
  //getMyQusetionInfo();
}

 後台controller默認接收的也是GET

@RequestMapping(value = "/isAuthenticing", method = RequestMethod.GET)
@ResponseBody
public Map<String, Object> isAuthenticing(@RequestParam("userid") String userid,HttpServletRequest request) throws IOException {
//方法體;
}

解決辦法  

      實踐證明使用Get方法式是不行的,每次後退到上一頁的時候,頁面中的ajax方法會照常執行,但是並不會請求後台的controller,請求返回的值也是上一次加載頁面時候的值,具體原因我暫時不明確。

後來抱著試一試的心態 我使用可POST請求,出人意料的是 使用POST請求,真個流程就走通了。

前台JS代碼如下:

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 {
//方法體
}

希望能夠幫助那些和我遇到同樣問題的人。

注:紅色部分為修改的部分

以上所述是小編給大家介紹的解決微信返回上一頁,頁面中的AJAX的請求,對Get請求無效的問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved