自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Http協(xié)議:什么情況下發(fā)生了options請求?

網(wǎng)絡(luò) 通信技術(shù)
新來的同事問我,我的項(xiàng)目中出現(xiàn)了很多options的請求,然后后臺(tái)服務(wù)都掛了,我不知道如何處理。

背景:

新來的同事問我,我的項(xiàng)目中出現(xiàn)了很多options的請求,然后后臺(tái)服務(wù)都掛了,我不知道如何處理;

[[343640]]

http協(xié)議

其實(shí)通過http方式我們最常用的就是:GET,POST; 他們都可以作為前端和后臺(tái)的數(shù)據(jù)交換使用;

options在什么情況下出現(xiàn)

  • 跨域調(diào)用,例如:調(diào)試時(shí)候很多情況都在跨越方式下調(diào)試;
  • 自定義頭部
  • 請求頭的content-type參數(shù):application/x-www-form-urlencoded,multipart/form-data,text/plain之外的格式

以上三種情況出現(xiàn)就會(huì)出現(xiàn)options請求了,說白就是為了服務(wù)器安全,例如:同源策略引發(fā)這個(gè)規(guī)則;

options通常是瀏覽器自動(dòng)發(fā)起的,目的就是去服務(wù)器檢查一下接下來要到用的方法(GET、POST、PUT、detele)在服務(wù)器上是否支持;

對于服務(wù)器該如何處理

檢查以下內(nèi)容

A:方式

  • 來源是否允許
  • 自定義的頭部是否包含(這個(gè)和你項(xiàng)目有關(guān))

如果你項(xiàng)目認(rèn)為是安全的,直接返回200狀態(tài)碼,就可以;

B:方式

  • 來源是否允許
  • 自定義的頭部是否包含(這個(gè)和你項(xiàng)目有關(guān))
  • 檢查content-type 的內(nèi)容是否是你期望的

如果你項(xiàng)目認(rèn)為是安全的,直接返回200狀態(tài)碼,就可以

如果不允許你可以放回狀態(tài)碼400或者其他;

options請求影響服務(wù)性能,如何優(yōu)化

本來一個(gè)請求就搞定,結(jié)果頻繁多了很多options必然造成服務(wù)的壓力;

可以做到options請求做緩存處理,例如: http:// www.**.com/api/getUser 接口會(huì)出現(xiàn) options請求,我們在options返回是做一次options緩存,告知前端以后在此請求這個(gè)接口就不要在發(fā)options了,服務(wù)器響應(yīng)時(shí)可設(shè)置 Access-Control-Max-Age 的時(shí)間,默認(rèn)10分鐘;

進(jìn)一步理解options

和options有關(guān)的關(guān)鍵字段作用

  • Access-Control-Request-Method:告知服務(wù)器,接下來請求將使用方法,例如POST
  • Access-Control-Request-Headers:告知服務(wù)器,接下來請求將攜帶的自定義請求首部字段

MDN 中對于OPTIONS的描述

HTTP 的 OPTIONS 方法 用于獲取目的資源所支持的通信選項(xiàng)??蛻舳丝梢詫μ囟ǖ?URL 使用 OPTIONS 方法,也可以對整站(通過將 URL 設(shè)置為“*”)使用該方法。”

 

Http協(xié)議:什么情況下發(fā)生了options請求?

 

 

 

責(zé)任編輯:未麗燕 來源: 今日頭條
相關(guān)推薦

2021-09-14 07:26:25

雪花算法ID

2023-11-23 23:52:06

options請求瀏覽器

2024-11-07 12:08:27

微服務(wù)協(xié)議通信

2013-09-12 10:41:39

VDI部署

2021-04-23 23:19:26

加密貨幣穩(wěn)定幣比特幣

2013-07-29 14:50:43

API

2012-04-25 09:24:40

Android

2015-06-01 06:39:18

JavaJava比C++

2020-11-18 09:26:52

@property裝飾器代碼

2014-11-03 09:52:25

DNSUDPTCP

2019-06-12 11:01:19

TCPUDPHTTP

2015-06-29 14:23:13

JavaC++慢很多

2010-07-13 16:07:26

SQL Server行

2013-09-23 10:05:50

2023-05-18 08:38:13

Java鎖機(jī)制

2021-06-04 09:17:13

JavaScriptBoolean函數(shù)

2009-03-05 10:55:00

企業(yè)無線Wi-Fi

2024-01-09 11:39:47

數(shù)字化轉(zhuǎn)型數(shù)字優(yōu)先企業(yè)

2020-08-17 12:47:07

Mozilla裁員瀏覽器

2019-11-12 14:41:41

Redis程序員Linux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)