Node 跨域 CORS 模塊

只有 Web 才有跨域 CORS绕沈,移動端 iOS 與 Android 就沒有瞧甩,誰讓 Web 能看源代碼呢哪怔,沙盒機制也不如移動端健全。

  • 同源策略的限制:XmlHttpRequest 只允許請求當(dāng)前源(域名该编、協(xié)議迄本、端口)的資源,所以AJAX是不允許跨域的课竣。
  • 相反就是跨域:如果想讓XmlHttpRequest 按照自己意愿(域名嘉赎、協(xié)議置媳、端口)請求數(shù)據(jù),那就需要跨域

那為什么有同源策略限制公条?

沒有同源策略的話拇囊,資源(如HTTP頭、Cookie靶橱、DOM寥袭、localStorage等)就能相互隨意訪問,那就沒有安全了关霸。同源策略就是把每個網(wǎng)站都關(guān)在一個籠子里传黄,每個網(wǎng)站互相訪問不到數(shù)據(jù),只有用戶和網(wǎng)站開發(fā)者可以訪問數(shù)據(jù)队寇,這樣就安全了膘掰。

  • 下面是 Node 如何跨域的兩種方法,均是在服務(wù)器設(shè)置佳遣,并不是JSOP這樣不優(yōu)雅的方式识埋。

__ 方法一: __

app.use('*',function (req, res, next) {
  res.header('Access-Control-Allow-Origin', '*'); //這個表示任意域名都可以訪問,這樣寫不能攜帶cookie了苍日。
//res.header('Access-Control-Allow-Origin', 'http://www.baidu.com'); //這樣寫惭聂,只有www.baidu.com 可以訪問。
  res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild');
  res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');//設(shè)置方法
  if (req.method == 'OPTIONS') {
    res.send(200); // 意思是相恃,在正常的請求之前,會發(fā)送一個驗證笨觅,是否可以請求拦耐。
  }
  else {
    next();
  }
});

__ 方法二:__

$ npm install cors
var express = require('express')
var cors = require('cors')
var app = express()

var corsOptions = {
  origin: 'http://www.baidu.com', //只有百度可以訪問
  optionsSuccessStatus: 200 
}

app.get('/products/:id', cors(corsOptions), function (req, res, next) {
  res.json({msg: '只有百度可以訪問'})
})

app.listen(80, function () {
  console.log('CORS-enabled web server listening on port 80')
})

個人網(wǎng)頁http://www.liangtongzhuo.com 梁同桌

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市见剩,隨后出現(xiàn)的幾起案子杀糯,更是在濱河造成了極大的恐慌,老刑警劉巖苍苞,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件固翰,死亡現(xiàn)場離奇詭異,居然都是意外死亡羹呵,警方通過查閱死者的電腦和手機骂际,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冈欢,“玉大人歉铝,你說我怎么就攤上這事〈粘埽” “怎么了太示?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵柠贤,是天一觀的道長。 經(jīng)常有香客問我类缤,道長臼勉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任餐弱,我火速辦了婚禮坚俗,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘岸裙。我一直安慰自己猖败,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布降允。 她就那樣靜靜地躺著恩闻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪剧董。 梳的紋絲不亂的頭發(fā)上幢尚,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天,我揣著相機與錄音翅楼,去河邊找鬼尉剩。 笑死,一個胖子當(dāng)著我的面吹牛毅臊,可吹牛的內(nèi)容都是我干的理茎。 我是一名探鬼主播,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼管嬉,長吁一口氣:“原來是場噩夢啊……” “哼皂林!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蚯撩,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤础倍,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后胎挎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體沟启,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年犹菇,在試婚紗的時候發(fā)現(xiàn)自己被綠了德迹。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡项栏,死狀恐怖浦辨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤流酬,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布币厕,位于F島的核電站,受9級特大地震影響芽腾,放射性物質(zhì)發(fā)生泄漏旦装。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一摊滔、第九天 我趴在偏房一處隱蔽的房頂上張望阴绢。 院中可真熱鬧,春花似錦艰躺、人聲如沸呻袭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽左电。三九已至,卻和暖如春页响,著一層夾襖步出監(jiān)牢的瞬間篓足,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工闰蚕, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留栈拖,地道東北人。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓没陡,卻偏偏與公主長得像涩哟,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子诗鸭,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容