久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > formdata格式傳遞參數(shù)詳解

        formdata格式傳遞參數(shù)詳解

        來(lái)源:千鋒教育
        發(fā)布人:xqq
        時(shí)間: 2023-11-24 18:14:08 1700820848

        一、前端formdata格式傳遞參數(shù)

        前端通過(guò)表單或ajax請(qǐng)求時(shí),通常使用formdata格式傳遞參數(shù)。利用表單的方式傳遞參數(shù)相對(duì)簡(jiǎn)單,只需要設(shè)置表單的enctype屬性為"multipart/form-data"即可。ajax請(qǐng)求時(shí),需要?jiǎng)?chuàng)建FormData對(duì)象,并使用append()方法添加鍵值對(duì),示例如下:

        
        let formData = new FormData();
        formData.append("username", "admin");
        formData.append("password", "123456");
        
        $.ajax({
          url: "/login",
          type: "POST",
          data: formData,
          processData: false,
          contentType: false,
          success: function(data) {
            console.log(data);
          }
        });
        

        二、formdata格式傳參數(shù)

        formdata格式的參數(shù)傳遞支持多種數(shù)據(jù)類型,如文本、文件等。對(duì)于文本數(shù)據(jù),可以直接使用FormData對(duì)象的append()方法添加鍵值對(duì);對(duì)于文件數(shù)據(jù),則需要通過(guò)File對(duì)象創(chuàng)建,再使用FormData的append()方法添加。示例如下:

        
        let formData = new FormData();
        formData.append("username", "admin");
        formData.append("file", file); // file為File對(duì)象
        
        $.ajax({
          url: "/upload",
          type: "POST",
          data: formData,
          processData: false,
          contentType: false,
          success: function(data) {
            console.log(data);
          }
        });
        

        三、formdata格式參數(shù)樣式

        formdata格式的參數(shù)傳遞樣式與常規(guī)的鍵值對(duì)數(shù)據(jù)相似,使用鍵值對(duì)的形式添加參數(shù),示例如下:

        
        Content-Disposition: form-data; name="username"
        
        admin
        

        四、formdata數(shù)據(jù)格式請(qǐng)求

        在服務(wù)器端接收f(shuō)ormdata格式傳遞參數(shù)時(shí),需要使用特殊的解析方式。對(duì)于表單的方式傳遞,可以使用multipart/form-data格式解析;對(duì)于ajax請(qǐng)求,需要使用流的方式解析。示例如下:

        
        // 解析multipart/form-data格式
        const busboy = new Busboy({ headers: req.headers });
        busboy.on("file", (fieldname, file, filename, encoding, mimetype) => {
          // file為File對(duì)象
        });
        busboy.on("field", (fieldname, val, fieldnameTruncated, valTruncated, encoding, mimetype) => {
          // val為字段值
        });
        req.pipe(busboy);
        
        // 解析流
        const form = new formidable.IncomingForm();
        form.parse(req, (err, fields, files) => {
          // fields為鍵值對(duì)數(shù)據(jù),files為文件數(shù)據(jù)
        });
        

        五、formdata和json傳遞的區(qū)別

        formdata格式和json格式都是一種常用的參數(shù)傳遞方式。formdata格式主要用于傳遞二進(jìn)制數(shù)據(jù)或文件,而json格式則用于傳遞結(jié)構(gòu)化數(shù)據(jù)。

        在使用ajax請(qǐng)求時(shí),如果需要傳遞二進(jìn)制數(shù)據(jù)或文件,則必須使用formdata格式;如果傳遞結(jié)構(gòu)化數(shù)據(jù),則可以使用json格式。示例如下:

        
        $.ajax({
          url: "/login",
          type: "POST",
          data: { username: "admin", password: "123456" }, // json格式
          success: function(data) {
            console.log(data);
          }
        });
        
        $.ajax({
          url: "/upload",
          type: "POST",
          data: formData, // formdata格式
          processData: false,
          contentType: false,
          success: function(data) {
            console.log(data);
          }
        });
        

        六、formdata是什么

        FormData是一種對(duì)象類型,可以用來(lái)獲取表單元素的值,創(chuàng)建鍵值對(duì)數(shù)據(jù)或者二進(jìn)制數(shù)據(jù),然后使用XMLHttpRequest或fetch API將數(shù)據(jù)提交到服務(wù)器端。可以使用append()添加鍵值對(duì)或二進(jìn)制數(shù)據(jù),使用delete()刪除鍵值對(duì)數(shù)據(jù),使用entries()獲取一個(gè)用于迭代所有鍵值對(duì)的迭代器,使用get()獲取指定鍵名的鍵值對(duì)數(shù)據(jù)等等。示例如下:

        
        let formData = new FormData();
        formData.append("username", "admin");
        formData.append("file", file);
        
        console.log(formData.get("username")); // admin
        console.log(formData.getAll("file")); // [File]
        console.log(formData.entries()); // 返回一個(gè)迭代器
        formData.delete("username");
        console.log(formData.has("username")); // false
        

        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        linux寫時(shí)拷貝,linux 寫時(shí)拷貝技術(shù)

        Linux編程文件內(nèi)容復(fù)制linux編程文件可以使用cp命令來(lái)實(shí)現(xiàn)文件復(fù)制。例如,如果要將文件filetxt復(fù)制到文件夾folder2中,可以在終端中輸入以下...詳情>>

        2023-11-24 20:45:33
        深入了解npm run lint

        一、什么是npm run lint?npm run lint是一個(gè)非常強(qiáng)大的命令,它可以自動(dòng)檢查代碼中的潛在錯(cuò)誤和不規(guī)范的格式,從而提供了對(duì)代碼質(zhì)量的保證。npm...詳情>>

        2023-11-24 20:12:57
        用法介紹plt.errorbar

        一、參數(shù)介紹plt.errorbar是matplotlib庫(kù)中的一個(gè)函數(shù),用于繪制帶誤差線的線圖。它的主要參數(shù)有:1. x、y指定數(shù)據(jù)的橫縱坐標(biāo),必須是數(shù)組或者...詳情>>

        2023-11-24 20:09:21
        Top Time+ 編程框架詳解

        一、簡(jiǎn)介Top Time+ 是一套開源的編程框架,目的是為了讓開發(fā)者更快速簡(jiǎn)單地構(gòu)建高效可擴(kuò)展的Web應(yīng)用,降低企業(yè)級(jí)Web應(yīng)用的開發(fā)難度。它支持常用...詳情>>

        2023-11-24 20:05:45
        Oracle增加表字段的幾種方法

        一、使用ALTER TABLE語(yǔ)句增加表字段ALTER TABLE語(yǔ)句可以用來(lái)修改表結(jié)構(gòu),包括增加、刪除、修改字段以及修改表的約束等。如果要增加一個(gè)字段,可...詳情>>

        2023-11-24 19:44:09
        鲁山县| 肃南| 新河县| 沛县| 阿鲁科尔沁旗| 连南| 华宁县| 南雄市| 平和县| 三都| 长泰县| 湾仔区| 芜湖市| 灌阳县| 巨鹿县| 肥乡县| 克拉玛依市| 金昌市| 正定县| 突泉县| 大同县| 安新县| 务川| 南华县| 平乡县| 修文县| 太谷县| 南川市| 西城区| 五华县| 江津市| 枝江市| 保靖县| 南城县| 西充县| 象州县| 尼玛县| 尼勒克县| 绥滨县| 双流县| 大埔县|