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

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://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蜜臀| 亚洲国产精品一区性色| 尤物视频官网在线观看| 成人午夜激情在线免费观看| 国产一区二区激情在线| 成人免费视频观看国产| 国产午夜福利av在线麻豆| 亚洲人午夜射精精品日韩| 国产精品国产三级国产专播| 欧美亚洲国产日韩在线高清| 国产精品一区二区三区激情| 人妻中文字幕视频在线| 亚洲成人福利免费网站| 中文色婷婷国产精品视频| 亚洲综合久久精品少妇av| 亚洲和欧洲一码二码区视频| 欧美大尺度影片在线观看| 日韩欧美亚洲一级黄片| 亚洲日本欧美激情综合| 色吊丝日韩在线观看| 免费av不卡一区二区| 国产精品久久久久久老熟女| 在线成人影院中文字幕| 思思久久96热在精品国产| 韩国日本午夜福利在线| 国产亚洲美女在线视频视频| 国产美女极度色诱视频| 四虎精品永久在线视频| 狠狠躁夜夜躁人人爽蜜桃| 中文字幕精品一区二区三区精品|