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

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)站建設
久久综合色爱综合欧美| 91精品国产高清久久福利| 精品人妻一区二区三区观看| 又黄又湿又刺激中文字幕| 亚洲国产色一区二区三区| 色哟哟哟哟免费观看视频| 萌白的所有视频在线观看| av岛国不卡一区二区在线观看| 草嫩av一区二区三区| 九色综合一区二区三区| 亚洲精品污一区二区三区| 成年人在线观看免费观看| 天堂av好男人亚洲精品| 日韩视频在线一区二区三区| 欧美成人午夜福利在线视频| 97国产成人精品视频免费| 中文字幕日本人妻乱码| 精品日韩av一区二区三区| 免费观看日本成人午夜大片| 亚洲av少妇一区二区成年男人| 国产精品国产三级区别| 人妻艳情一区二区三区| 日韩中文字幕 在线播放| 亚洲视频免费在线一区| 国产91黑丝视频在线观看| 欧美日韩一区二区三区四区在线观看| 97在线观看全部视频| 亚洲国产成人综合一区二区三区| 日本亚洲一区二区在线| 国产三级黄色片免费看| 国产丝袜美腿一二三区| 国产高清成人小视频在线| 亚洲免费av第一区第二区| 99热成人精品热久久| 中文字幕成人免费看片| 亚洲欧美日韩精品麻豆| 成人性生交大片免费男同| 97在线视频观看视频在线| 亚洲av一区二区三区色多多| 午夜美女精品福利视频| 免费黄色日韩在线观看|