面試被問到 前後端分離的專案如何解決跨域問題

2021-10-06 14:49:54 字數 635 閱讀 5873

面試中被問到前後端分離的框架中,如何解決跨域問題

1、什麼是跨域?

首先談一下為什麼會跨域,前端為了防止盜用網路資源,引入了同源的概念,我們做開發的都知道,我們啟動乙個後台的程式都需要乙個ip和埠號,乙個ip和埠號就可以提供服務了。

所以簡單的理解:如果ip不同,肯定就跨域了,如果ip相同,埠不同,那也是跨域的行為。

2、如何解決?

這裡我們不羅列所有方法,說常用的即可,面試要掌握技巧,面試不是背部落格,深入理解,小夥伴們自己還得去試一試

1、使用jsonp解決**跨域 (不用多說,js本身可以跨域,帶回請求)

2、使用設定響應頭允許跨域

public mapajaxb(httpservletresponse response)
3、使用nginx做反向**(這個是目前使用比較多的方式,一定要講出來)

請求不同的專案,可以以路徑的方式進行區分,請求到nginx後進行攔截,**到不同的ip和埠的服務上去

server 

###b專案

location /b

}

前後端分離專案

由於目前公司需要為已經存在的專案統一單點登入,而技術選型後採用的是apereo的cas。但是由於官方cas文件的混亂性 你懂得!並且其官方的例項和網上的例項教程都是基於傳統的專案 也就是非前後端分離專案 因此對於前後端分離的專案整合cas的可參考的資料就比較少,於是就有了下面的前後端分離專案基於ca...

前後端不分離專案

express 是nodejs核心框架。express的功能介紹?express generator自動構建開發工具 express有乙個本地埠localhost 3000靜態網頁 聯合前端網頁的源 通過ejs模組可以實現前後端聯合專案 ejs可以識別html標籤,還能解析js,執行在express...

Go vue前後端分離專案

後端部分 前端mock映象設計,提供腳手架。後端後端採用gin框架,自行搭建mvc架構,包括controller model router db四個主要部分。controller提供獲得資料資訊的各種方法,通過與models互動,獲得需要的資料,然後返回給view。在前後端分離的實現中,view被包...