欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Ajax原生如何實現(xiàn)MIME類型-創(chuàng)新互聯(lián)

小編給大家分享一下Ajax原生如何實現(xiàn)MIME類型,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

站在用戶的角度思考問題,與客戶深入溝通,找到桐廬網(wǎng)站設計與桐廬網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站設計、外貿(mào)營銷網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、空間域名、網(wǎng)絡空間、企業(yè)郵箱。業(yè)務覆蓋桐廬地區(qū)。

問題描述

下面的例子是一個Ajax的post請求的代碼,這段代碼在測試運行的時候,發(fā)現(xiàn)返回的狀態(tài)碼為400,服務器不能理解的請求,后來經(jīng)過查看和修改,發(fā)現(xiàn)只需要將下面的代碼稍微改造一下就好了

原代碼

var send = function (url, params, fn) {
  var me = this;
  var xhr = null;
  var data = '';
  fn = fn || function() {};
  params = params || {};
  for(var item in params) {
   data += item + '=' + params[item] + '&';
  }
  if(data[data.length - 1] == '&') {
   data = data.slice(0, data.length - 1);
  }
  if(window.XMLHttpRequest) {
   xhr = new XMLHttpRequest();
  }else if(window.ActiveXObject) {
   xhr= new ActiveXObject("Microsoft.XMLHTTP");
  }
  xhr.open("post", url, true);
  xhr.setRequestHeader("Content-type", "application/json");
  xhr.onreadystatechange = function () {
   if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 304)) {
    fn(JSON.parse(xhr.responseText));
   }
  };
  xhr.send(JSON.stringify(params));
}

修改之后的代碼

var send = function (url, params, fn) {
    var me = this;
    var xhr = null;
    fn = fn || function() {};
    params = params || {};
    if(window.XMLHttpRequest) {
      xhr = new XMLHttpRequest();
    }else if(window.ActiveXObject) {
      xhr= new ActiveXObject("Microsoft.XMLHTTP");
    }
    xhr.open("post", url, true);
    xhr.setRequestHeader("Content-type", "application/json");
    xhr.onreadystatechange = function () {
      if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 304)) {
        fn(JSON.parse(xhr.responseText));
      }
    };
    xhr.send(JSON.stringify(params));
}

這兩段代碼的差別就是,修改之后的代碼去掉了關于data這個變量的處理以及在send中傳遞的參數(shù)變?yōu)榱藀arams這個變量

問題解惑

問題是解決了,但是我心里的疑問卻產(chǎn)生了,之前在使用原生的Ajax的時候,當method為post的時候,傳遞的參數(shù)的形式是”name=123&age=32”這樣子的,那么為什么現(xiàn)在傳遞一個序列化的JSON對象就可以了呢?

這時候我注意到自己所加的MIME類型,也就是設置Content-type的那處,我設置的是"application/json",這樣看起來就解釋的通了,這時候我回想起之前常用的MIME類型是“application/x-www-form-urlencoded”,這種時候send方法傳遞的參數(shù)就要求是”name=123&age=32”這樣子的,到這里,解惑完畢啦(~ ̄▽ ̄)~

補充

順便說下405這個狀態(tài)碼,上一次見到它的時候,是我前端發(fā)送請求的時候,傳遞的參數(shù)不對,這次遇到它的時候,是因為后臺還沒有添加這個請求的處理

以上是“Ajax原生如何實現(xiàn)MIME類型”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

新聞標題:Ajax原生如何實現(xiàn)MIME類型-創(chuàng)新互聯(lián)
本文URL:http://www.aaarwkj.com/article2/dppcic.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司、用戶體驗、ChatGPT、標簽優(yōu)化、動態(tài)網(wǎng)站、品牌網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設
亚洲欧洲另类美女久久精品| 一区二区中文字幕日本韩国| 精品少妇人妻av免费久久久| 午夜欧美激情在线视频| 亚洲精品一区国产精品av| 亚洲国产av福利久久| 日本国产在线一区二区| 午夜性色福利视频你懂的| 饥渴少妇高潮露脸嗷嗷叫| 黄色亚洲一区二区三区四区| 91日韩中文字幕在线观看| 日本高清一区二区网站| 农村精品少妇久久久久久| 尤物资源视频在线观看| 成人午夜在线免费观看| 最新免费观看男女啪啪视频| 日本黄色高清视频一区| 久久国产精品午夜视频| 91亚洲国产成人久久| 亚洲奇米精品一区二区| 蜜桃臀视频一区二区三区| 亚洲精品午夜久久久av| 一区二区在线日韩欧美| 天天操夜夜操狠狠操91| 日韩av高清不卡一区二区三区| 人妻中文字幕av资源| 青青草视频在线针对华人| 国产精品欧美一区久久| 午夜伦理视频免费观看| 国产黄色大片在线关看| 天天操天天干夜夜骑| 久久久久久成人亚洲| 国产女同av一区二区三区| 亚洲午夜精品毛片成人| 丰满人妻熟妇乱精品视频| 欧美日韩亚洲综合在线| 日本亚洲美丽少妇天堂| 精品不卡一区二区三区| 日本高清久久一区二区三区| 欧美日韩国产综合下一页| 国产又大又长又粗又硬又猛|