国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Web:前端常用的幾種Http請(qǐng)求GET和POST樣例

這篇具有很好參考價(jià)值的文章主要介紹了Web:前端常用的幾種Http請(qǐng)求GET和POST樣例。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、簡述

在Web開發(fā)過程中,少不了發(fā)起Http請(qǐng)求服務(wù)端的接口數(shù)據(jù),在不同的框架中使用了不同的Http請(qǐng)求方式,常用的請(qǐng)求有fetch、 ajax、 axios、XMLHttpRequest、request,以下樣例僅供參考。
Web:前端常用的幾種Http請(qǐng)求GET和POST樣例,Web,前端,http,網(wǎng)絡(luò)協(xié)議

2、Fetch

Fetch API 是一種 JavaScript API,是一種基于 Promise 的現(xiàn)代API,用于在網(wǎng)絡(luò)中發(fā)送和接收請(qǐng)求。具有一下特點(diǎn):

  • 更簡潔的 API:只需要一個(gè)函數(shù)就可以完成網(wǎng)絡(luò)請(qǐng)求。
  • 基于 Promise:支持更直觀的異步編程。
  • 內(nèi)置 Request 和 Response 類:方便進(jìn)行請(qǐng)求和響應(yīng)的處理。
  • 支持跨域請(qǐng)求:允許在不同域名之間進(jìn)行數(shù)據(jù)交互。
2.1 GET
fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => {
    console.log(data); // 處理返回的數(shù)據(jù)
  })
  .catch(error => {
    console.error(error); // 處理錯(cuò)誤
  });
2.2 POST
const data = new FormData();
data.append('name', '張');
data.append('age', 20);
fetch('https://example.com/submit', {
method: 'POST',
headers: new Headers({
'Content-Type': 'application/x-www-form-urlencoded'
}),
body: new URLSearchParams(data)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));

3、Ajax

Ajax 全稱“Asynchronous JavaScript and XML”,譯為“異步 JavaScript 和 XML”,程序員們習(xí)慣稱之為“阿賈克斯”,它并不是一種技術(shù),而是多種技術(shù)的綜合體,其中包括 JavaScript、XML、JSON、DOM、CSS、HTML 以及最重要的 XMLHttpRequest 對(duì)象。通過 Ajax 可以異步從服務(wù)器請(qǐng)求數(shù)據(jù)并將數(shù)據(jù)更新到網(wǎng)頁中,整個(gè)過程不需要重載(刷新)整個(gè)網(wǎng)頁,可以將網(wǎng)頁的內(nèi)容更快的呈現(xiàn)給用戶。

3.1 GET
$.ajax({
	url: "https://api.example.com/data",
	type: 'GET',
	dataType: 'json',
	success: function (data) {
	},
	error: function () { 
	}
});
3.2 POST
let formData = new FormData();
formData.append('id', fileId);
$.ajax({
	url:'https://example.com/submit',
	type: 'POST',
	processData: false,
	contentType: false,
	data: formData,
	dataType: 'json',
	success: function (data) {
	},
	error: function (e) {
	}
});
3.3 Done

從JQuery 1.8,$.ajax()的 success() 被替換為 done() ,error() 被替換為 fail() ,complete() 被替換為 always() 。

$.ajax({
		type: "POST",
		url: "https://example.com/submit",
		dataType: "json",
	}).done(function(data){                         
		console.log(data)
	}).fail(function(jqXHR, textStatus, errorThrown){
		
	}).always(function( jqXHR, textStatus ){
		
	});	

4、Axios

Axios是一個(gè)基于promise的HTTP庫,類似于jQuery的ajax,用于http請(qǐng)求。可以應(yīng)用于瀏覽器端和node.js,既可以用于客戶端,也可以用于node.js編寫的服務(wù)端。

  • 支持Promise API
  • 攔截請(qǐng)求與響應(yīng),比如:在請(qǐng)求前添加授權(quán)和響應(yīng)前做一些事情。
  • 轉(zhuǎn)換請(qǐng)求數(shù)據(jù)和響應(yīng)數(shù)據(jù),比如:進(jìn)行請(qǐng)求加密或者響應(yīng)數(shù)據(jù)加密。
  • 取消請(qǐng)求
  • 自動(dòng)轉(zhuǎn)換JSON數(shù)據(jù)
  • 客戶端支持防御XSRF
4.1 引用

常用的引入axios方法:

<script src="https://unpkg.com/axios/dist/axios.min.js"></script> 

或者通過node npm來安裝:

npm install axios

方法列舉:GET、POST、PUT、PATCH、DELETE

4.2 GET
let params= {};
params.id = 1;
axios({
    method: "GET",
    url: "https://api.example.com/data",
    params:params
  }).then(res => {
    console.log(res);
  });
  
或者

axios.get("https://api.example.com/data", {
       params: params
     })
     .then(res => {
       console.log(res);
     })
     .catch(err => {
       console.log(err);
     });

4.3 POST
let formData = new FormData();
formData.append('id', fileId);
axios.post('https://example.com/submit',formData).then(res=>{
  console.log(res,'formData')
})

5、XMLHttpRequest

XMLHTTPRequest對(duì)象,顧名思義:是基于XML的HTTP請(qǐng)求。XMLHTTPRequest是一個(gè)瀏覽器接口,使得Javascript可以進(jìn)行HTTP(S)通信。XMLHTTPRequest(XHR)對(duì)象用于與服務(wù)器交互,我們通過 XMLHttpRequest 可以在不刷新頁面的情況下請(qǐng)求特定 URL獲取數(shù)據(jù),并且雖然名字叫XMLHTTPRequest,但實(shí)際上可以用于獲取任何類型的數(shù)據(jù)。

5.1 GET
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data');
xhr.send(); 
xhr.onreadystatechange = function(){
    if ( xhr.readyState == 4 && xhr.status == 200 ) {
      alert( xhr.responseText );
    } else {
      alert( xhr.statusText );
    }
};
5.2 POST
var xhr = new XMLHttpRequest();
xhr.open('post', 'https://example.com/submit', true);
xhr.responseType = "blob";
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
xhr.onload = function () {
	if (xhr.status == 200) {
		var blob = new Blob([xhr.response], {
			type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; application/octet-stream;charset=utf-8"'
		})
		var reader = new FileReader();
		reader.onload = function () {
			console.log(this.result);
		};
		reader.readAsArrayBuffer(blob);
	}
};
xhr.send();

6、Request

Node.js是一個(gè)基于Chrome V8 JavaScript引擎的開源、跨平臺(tái)的Javascript運(yùn)行環(huán)境,使JavaScript可以脫離瀏覽器運(yùn)行。它提供了很多強(qiáng)大的模塊,使Web開發(fā)更輕松。其中,request模塊是一個(gè)使用最廣泛的HTTP模塊,可以用來發(fā)送HTTP/HTTPS請(qǐng)求。

添加request模塊:文章來源地址http://www.zghlxwxcb.cn/news/detail-727991.html

npm install request
6.1 GET
var request = require('request');
request.get('https://api.example.com/data', function(error, response, body) {
  console.log(body);
});
6.2 POST
var request = require('request');
request.post('https://example.com/submit', {form:{key:'value'}}, function(error, response, body) {
  //上傳文件或者其他操作
});

到了這里,關(guān)于Web:前端常用的幾種Http請(qǐng)求GET和POST樣例的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用OkHttp發(fā)送POST請(qǐng)求的幾種方式

    本文將介紹 OkHttp 客戶端的基本用法。 主要介紹 OkHttp 3.x 版本中發(fā)送Post請(qǐng)求的幾種方式。 使用 FormBody.Builder 構(gòu)造基本的 RequestBody , 包含兩個(gè)參數(shù):用戶名、密碼,發(fā)送 POST請(qǐng)求。 如果要對(duì)請(qǐng)求進(jìn)行身份驗(yàn)證,可以使用 Credentials.basic 構(gòu)建器向請(qǐng)求頭中添加憑據(jù)。 下面代碼給

    2024年02月13日
    瀏覽(23)
  • uniapp發(fā)起post和get請(qǐng)求——this.$http.get 和 this.$http.post傳參

    main.js按照內(nèi)容自行修改

    2024年02月15日
    瀏覽(51)
  • HTTP中GET請(qǐng)求和POST請(qǐng)求的區(qū)別

    HTTP中GET請(qǐng)求和POST請(qǐng)求的區(qū)別

    HTTP(超文本傳輸協(xié)議)是用于在 Web 瀏覽器和 Web 服務(wù)器之間傳輸數(shù)據(jù)的協(xié)議。在 HTTP 中,GET 和 POST 是兩種常見的請(qǐng)求方法。一般我們?cè)跒g覽器輸入一個(gè)網(wǎng)址訪問網(wǎng)站都是 GET 請(qǐng)求;在 FORM 表單中,可以通過設(shè)置 Method 指定提交方式為 GET 或者 POST 提交方式,默認(rèn)為 GET 提交方

    2024年04月15日
    瀏覽(20)
  • 【JavaScript】 發(fā)送 POST 請(qǐng)求并帶有 JSON 請(qǐng)求體的幾種方法

    ?在現(xiàn)代的前端開發(fā)中,與后端進(jìn)行數(shù)據(jù)交互是必不可少的。其中,發(fā)送 POST 請(qǐng)求并帶有 JSON 請(qǐng)求體是一種常見的需求。在本文中,我們將介紹在 JavaScript 中實(shí)現(xiàn)這一需求的幾種方法。 ? XMLHttpRequest 是一種傳統(tǒng)的發(fā)送網(wǎng)絡(luò)請(qǐng)求的方式。以下是一個(gè)使用 XMLHttpRequest 發(fā)送 POST 請(qǐng)

    2024年03月19日
    瀏覽(27)
  • java調(diào)用http接口(get請(qǐng)求和post請(qǐng)求)

    1.http接口的格式如下: 圖片選擇失敗,我只能把數(shù)據(jù)貼出來,如果有不懂的可以問我哈。 http://localhost:8881/department/getDepartmentList接口數(shù)據(jù)如下:(請(qǐng)求方式是GET) http://localhost:8881/department/getDataById?id=3接口數(shù)據(jù)如下:(請(qǐng)求方式是POST) 2.需要引入的包有: 3.實(shí)現(xiàn)方法如下:

    2024年02月13日
    瀏覽(25)
  • QT進(jìn)行http請(qǐng)求(post/get)

    在剛接觸QT時(shí)第一個(gè)任務(wù)就是進(jìn)行http請(qǐng)求,現(xiàn)在才開始記錄,可能會(huì)有遺漏的點(diǎn)。 一、post請(qǐng)求 在.pro文件中 在.h文件中添加對(duì)應(yīng)的頭文件 在.cpp中 二、get請(qǐng)求 .pro和.h文件和post請(qǐng)求一樣,在.cpp中

    2024年02月11日
    瀏覽(21)
  • C# Http 請(qǐng)求接口 Get / Post

    C# Http 請(qǐng)求接口 Get / Post

    目錄 一、概述 二、創(chuàng)建 Web API? 三、HttpRequestHelper 三、測試 結(jié)束 get 和 post 請(qǐng)求,最早被用來做瀏覽器與服務(wù)器之間交互HTML和表單的通訊協(xié)議,后來又被廣泛的擴(kuò)充到接口格式的定義上,到目前為止,get / post 請(qǐng)求依然應(yīng)用在各大網(wǎng)站中,比如在用戶登錄時(shí),調(diào)用 get / post?

    2024年02月11日
    瀏覽(16)
  • Java發(fā)送HTTP GET/POST請(qǐng)求

    在這篇文章中,將向你展示四種發(fā)送Http的GET/POST的例子,如下: 在Java11的java.net.http.*包中,有一個(gè)HttpClient類可以完成HTTP請(qǐng)求。 Java11HttpClientExample.java 本例使用HttpURLConnection(http)和HttpsURLConnection(https) HttpURLConnectionExample.java 使用Apache HttpClient完成HTTP請(qǐng)求的發(fā)送需要添加Maven依賴

    2024年02月13日
    瀏覽(23)
  • HTTP中g(shù)et和post請(qǐng)求方式

    #get和post特點(diǎn) get請(qǐng)求: 請(qǐng)求參數(shù)在請(qǐng)求地址后面,提交的數(shù)據(jù)量較小,安全性較差,不建議用來提交敏感信息(地址欄中會(huì)顯示,并且有可能被保存請(qǐng)求地址)。 功能:GET 方法用于獲取由 Request-URI 所標(biāo)識(shí)的資源的信息 默認(rèn)方法: GET方法是默認(rèn)的HTTP請(qǐng)求方法 ,例如當(dāng)我們

    2024年04月26日
    瀏覽(21)
  • Http中post/get請(qǐng)求參數(shù)接收

    Http中post/get請(qǐng)求參數(shù)接收

    Http請(qǐng)求報(bào)文示例圖如下: ? ①是請(qǐng)求方法,GET和POST是最常見的HTTP方法,除此以外還包括DELETE、HEAD、OPTIONS、PUT、TRACE。不過,當(dāng)前的大多數(shù)瀏覽器只支持GET和POST,Spring 3.0提供了一個(gè)HiddenHttpMethodFilter,允許通過_method的表單參數(shù)指定這些特殊的HTTP方法(實(shí)際上還是通過POST提

    2024年01月25日
    瀏覽(35)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包