做網(wǎng)站的公司網(wǎng)站seo診斷分析和優(yōu)化方案
OPTIONS請(qǐng)求方法及使用場(chǎng)景
- 回答思路:什么是options請(qǐng)求-->options請(qǐng)求方法-->options使用場(chǎng)景
- 什么是options請(qǐng)求?(淺入)
- 擴(kuò)展:常見的HTTP請(qǐng)求有什么?
- 擴(kuò)展:常見的HTTP請(qǐng)求的作用?
- options請(qǐng)求方法(深入)
- options使用場(chǎng)景
回答思路:什么是options請(qǐng)求–>options請(qǐng)求方法–>options使用場(chǎng)景
什么是options請(qǐng)求?(淺入)
是HTTP請(qǐng)求的一種,詢問支持的請(qǐng)求方法,用來跨域請(qǐng)求
擴(kuò)展:常見的HTTP請(qǐng)求有什么?
GET,POST,PUT,DELETE,HEAD,OPTIONS,CONNECT,TRACE請(qǐng)求
擴(kuò)展:常見的HTTP請(qǐng)求的作用?
1.GET: 向服務(wù)器獲取數(shù)據(jù);
2.POST:將實(shí)體提交到指定的資源,通常會(huì)造成服務(wù)器資源的修改;
3.PUT:上傳文件,更新數(shù)據(jù);
4.DELETE:刪除服務(wù)器上的對(duì)象;
5.HEAD:獲取報(bào)文首部,與GET相比,不返回報(bào)文主體部分;
6.OPTIONS:詢問支持的請(qǐng)求方法,用來跨域請(qǐng)求;
7.CONNECT:要求在與代理服務(wù)器通信時(shí)建立隧道,使用隧道進(jìn)行TCP通信;
8.TRACE: 回顯服務(wù)器收到的請(qǐng)求,主要?于測(cè)試或診斷。
options請(qǐng)求方法(深入)
options是用于請(qǐng)求獲得由Request-URL標(biāo)識(shí)的資源在請(qǐng)求或響應(yīng)的通信過程中的功能選項(xiàng),通用這方法可以在采取具體資源請(qǐng)求之前決定對(duì)該資源采取何種必要措施,注: 該請(qǐng)求方法的響應(yīng)不能緩存
例如:
fetch('https://api.example.com/data', {method: 'OPTIONS',headers: {'Content-Type': 'application/json',// 其他請(qǐng)求頭參數(shù)},
}).then(response => {if (response.ok) {// 處理成功響應(yīng)console.log('請(qǐng)求成功');} else {// 處理錯(cuò)誤響應(yīng)console.log('請(qǐng)求失敗');}}).catch(error => {// 處理請(qǐng)求錯(cuò)誤console.error('請(qǐng)求發(fā)生錯(cuò)誤:', error);});
options使用場(chǎng)景
(1)獲取服務(wù)器支持的所有HTTP請(qǐng)求方法
(2)用來檢查訪問權(quán)限,如:在進(jìn)行CORS跨域資源共享時(shí),對(duì)于復(fù)雜請(qǐng)求,就是使用OPTIONS方法發(fā)送詢問(嗅探)請(qǐng)求,來判斷是否有權(quán)限