国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

http-web前后端的跨域

妤鋒シ / 2419人閱讀

摘要:本文詳見文件夾提供主服務(wù)開啟服務(wù)提供一個(gè)靜態(tài)容器開啟服務(wù)文件夾客戶端頁(yè)面,發(fā)送或者瀏覽器跨域相關(guān)跨域是為了保證服務(wù)端的安全,不允許隨便的請(qǐng)求,這是瀏覽器的安全行為和不同域,瀏覽器并不知道映射到的是,所以認(rèn)為他們不同域普通跨域之當(dāng)瀏覽

本文詳見

github: https://github.com/captainJac...

server文件夾 server.js 提供主server api服務(wù)

node server/server.js 開啟服務(wù)

staticServer.js 提供一個(gè)靜態(tài)html容器

node server/staticServer.js 開啟服務(wù)

www文件夾 cross-domain.html 客戶端頁(yè)面,發(fā)送XHR或者fetch 瀏覽器跨域相關(guān)

跨域是為了保證服務(wù)端的安全,不允許隨便的請(qǐng)求,這是瀏覽器的安全行為

tips

localhost和127.0.0.1不同域,瀏覽器并不知道localhost映射到的是127.0.0.1,所以認(rèn)為他們不同域
普通跨域之Access-Control-Allow-Origin

當(dāng)瀏覽器出現(xiàn)跨域報(bào)錯(cuò)時(shí),==其實(shí)服務(wù)器的響應(yīng)已經(jīng)到達(dá)瀏覽器了==,只不過(guò)瀏覽器會(huì)對(duì)比請(qǐng)求的頭信息,對(duì)比當(dāng)前域是否是被Access-Control-Allow-Origin頭信息允許的,如果不允許,則提示報(bào)錯(cuò)

JSONP

對(duì)于link,script,image等標(biāo)簽src或ref是可以拿到非同域的資源,js動(dòng)態(tài)創(chuàng)建script標(biāo)簽則可獲取到數(shù)據(jù),這個(gè)不需要后端支持

CORS預(yù)請(qǐng)求&&跨域

敲黑板:Access-Control-Allow-Origin并不能完全支持跨域,還有其他限制,比如使用fetch,有些自定義頭信息,超出允許范圍的方法等,在跨域的時(shí)候,都是不被允許的

預(yù)請(qǐng)求

在以下允許范圍之外的,都需要通過(guò)預(yù)請(qǐng)求的驗(yàn)證&&一些限制

允許方法

GET

POST

HEAD

允許Content-Type

text/plain

multipart/form-data

application/x-www-form-urlencoded

請(qǐng)求頭限制,查看官方文檔吧

XMLHttpRequestUpload對(duì)象均沒有注冊(cè)任何時(shí)間監(jiān)聽器

請(qǐng)求中沒有使用ReadableStream對(duì)象

預(yù)請(qǐng)求根據(jù)什么來(lái)判斷這個(gè)請(qǐng)求是否是被允許的呢 - Response Headers信息,瀏覽器讀取Response Headers信息來(lái)知道當(dāng)前請(qǐng)求是不是被允許的

對(duì)于CORS跨域,限制條件有很多,如下,這些在限制條件之內(nèi)才可以允許

自定義的方法

Content-Type

頭信息

… 詳見官方文檔

以自定義頭信息舉例

前端

fetch("http://127.0.0.1:8887", {
  method: "POST",
  // 此處添加一條自定義頭信息
  headers: {
    "X-Test-Cors111": "test"
  }
})

后端

response.writeHead(200, {
  "Access-Control-Allow-Origin": "*",
})
此時(shí)瀏覽器提示準(zhǔn)確的相應(yīng)的報(bào)錯(cuò)

此時(shí)后端需要如下,允許這種自定義頭信息,才可以可以正常返回

response.writeHead(200, {
  "Access-Control-Allow-Origin": "*",
  "Access-Control-Allow-Headers": "X-Test-Cors111"
})

同理,還有以下其他的限制

"Access-Control-Allow-Headers": "X-Test-Cors111" //針對(duì)自定義頭信息

"Access-Control-Allow-Methods": "PUT, DELETE", // 針對(duì)自定義方法

"Access-Control-Max-Age": "1000", // Access-Control-Max-Age:當(dāng)前請(qǐng)求下面,以上述形式請(qǐng)求允許跨域的,1000s之內(nèi)不需要發(fā)送預(yù)請(qǐng)求來(lái)驗(yàn)證了,直接發(fā)起正式的請(qǐng)求即可

tips:

chrome devTools有時(shí)候會(huì)不提示options預(yù)請(qǐng)求的XHR?發(fā)送options預(yù)請(qǐng)求的不好驗(yàn)證

查看詳細(xì)的http請(qǐng)求和響應(yīng)的內(nèi)容: curl -v www.baidu.com

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/99719.html

相關(guān)文章

  • 單頁(yè)應(yīng)用的部署方案

    摘要:所以單頁(yè)應(yīng)用的部署,需要將所有的頁(yè)面請(qǐng)求都返回,瀏覽器下載了后會(huì)自動(dòng)解析并導(dǎo)航到對(duì)應(yīng)頁(yè)面。總結(jié)單頁(yè)應(yīng)用與以前的常規(guī)多頁(yè)面應(yīng)用還是有區(qū)別的,開發(fā)過(guò)程與后端解耦了,同時(shí)會(huì)出現(xiàn)跨域鑒權(quán)以及應(yīng)用部署的問題。 本文同步發(fā)布于我的個(gè)人博客上 - 單頁(yè)應(yīng)用的部署方案 本文主要簡(jiǎn)單講一下單頁(yè)應(yīng)用的開發(fā)及部署方法,默認(rèn)你懂一些服務(wù)端知識(shí)及nginx知識(shí),如果有任何可以在下方評(píng)論留言。 單頁(yè)應(yīng)用 SPA(...

    yanbingyun1990 評(píng)論0 收藏0
  • Nginx反向代理解決前后端聯(lián)調(diào)跨域問題

    摘要:反向代理前后端聯(lián)調(diào)跨域什么是跨域跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本。這時(shí)候,用反向代理實(shí)現(xiàn)跨域,是最簡(jiǎn)單的跨域方式。 keywords: Nginx反向代理 前后端聯(lián)調(diào) 跨域 1.什么是跨域 跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對(duì)javascript施加的安全限制。 所謂同源是指,域名,協(xié)議,端口都相同。瀏覽器執(zhí)行javascrip...

    QiuyueZhong 評(píng)論0 收藏0
  • 三分鐘解決前后端分離項(xiàng)目中的跨域問題

    摘要:想看重點(diǎn)的直接挪到文章底部,反向代理的配置跨域涉及到前后端開發(fā)的項(xiàng)目中,不可避免的涉及到了跨域的問題。瀏覽器的同源策略會(huì)導(dǎo)致跨域,這里同源策略又分為以下兩種同源策略禁止對(duì)不同源頁(yè)面進(jìn)行操作。同源策略禁止使用對(duì)象向不同源的服務(wù)器地址發(fā)起請(qǐng)求。 想看重點(diǎn)的直接挪到文章底部,nginx反向代理的配置 跨域 涉及到前后端開發(fā)的項(xiàng)目中,不可避免的涉及到了跨域的問題。跨域,指的是瀏覽器不能執(zhí)行其他...

    saucxs 評(píng)論0 收藏0
  • 三分鐘解決前后端分離項(xiàng)目中的跨域問題

    摘要:想看重點(diǎn)的直接挪到文章底部,反向代理的配置跨域涉及到前后端開發(fā)的項(xiàng)目中,不可避免的涉及到了跨域的問題。瀏覽器的同源策略會(huì)導(dǎo)致跨域,這里同源策略又分為以下兩種同源策略禁止對(duì)不同源頁(yè)面進(jìn)行操作。同源策略禁止使用對(duì)象向不同源的服務(wù)器地址發(fā)起請(qǐng)求。 想看重點(diǎn)的直接挪到文章底部,nginx反向代理的配置 跨域 涉及到前后端開發(fā)的項(xiàng)目中,不可避免的涉及到了跨域的問題。跨域,指的是瀏覽器不能執(zhí)行其他...

    sushi 評(píng)論0 收藏0
  • 徹底弄懂跨域問題

    摘要:用于告知瀏覽器可以將預(yù)先檢查請(qǐng)求返回結(jié)果緩存的時(shí)間,在緩存有效期內(nèi),瀏覽器會(huì)使用緩存的預(yù)先檢查結(jié)果判斷是否發(fā)送跨域請(qǐng)求。 跨域,老生常談的問題 簡(jiǎn)述 作為一只前端菜鳥,跨域方面只懂得JSONP和CORS,并未曾深入了解。但隨著春招越來(lái)越近,就算是菜鳥也要猛振翅膀。近幾日仔細(xì)研究了跨域問題,寫下這篇文章,希望對(duì)開發(fā)者們有所幫助。在讀本文前,希望您對(duì)以下知識(shí)略有了解。 瀏覽器同源策略 n...

    rose 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<