前後臺分離專案的跨域問題

2021-09-29 20:52:34 字數 1139 閱讀 4571

一般的web專案都是前台頁面和後台類放在乙個專案檔案裡,前後臺互動不存在跨域問題。

但是對於前後臺分離的專案,由於瀏覽器的同源安全策略,再用平時的方法是請求不到的,這時就要採取一些特殊手段。cors是乙個w3c標準,全稱是」跨域資源共享」(cross-origin resource sharing)。它允許瀏覽器向跨源伺服器,發出xmlhttprequest請求,從而克服了ajax只能同源使用的限制

同源安全策略:瀏覽器只允許請求當前域的資源,而對其他域的資源表示不信任(只要不是乙個埠就不是當前域)

方法一:

1、ajax設定支援跨域

//使ajax支援跨域

$.support.cors = true;

$.ajax(,

datatype: "text",

type:"post",

success: function (response) ,

error:function(response),

});

2、後台類新增響應頭

@responsebody

public string test(httpservletrequest request, httpservletresponse response)

方法二:

針對springboot專案,新增corsconfig配置:

/*

* 跨域支援

*/@configuration

public class corsconfig implements webmvcconfigurer

#支援跨域

location /cskx

配置nginx監聽8800埠,ajax請求的時候直接請求nginx伺服器的8800埠,就會自動轉到配置的服務上。

$.ajax(,

datatype: "text",

type:"post",

success: function (response) ,

error:function(response),

});

前後端專案分離 跨域問題

1.跨域 說明最少有兩個域,才會出現跨的這種情況 2.跨域問題出現的本質 a.網域名稱不同,b.埠號不同,c.協議 不同 3,瀏覽器的同源策略 非位址列請求 如a頁面在a服 務器,b頁面在b伺服器,在a頁面請求b頁面的資訊就會出現跨域問題,目的是為了保證使用者資訊保安 如果a頁面可以獲取b頁面資訊,...

前後端分離專案涉及跨域問題

1.不使用jsonp,只修改服務端 response.setheader access control allow origin reqs.getheader origin response.setheader access control allow credentials true respon...

前後端分離專案解決跨域問題

後台我使用的ssm框架搭建,前端使用vue cli腳手架完成。最開始我在後台寫了過濾器,但是前端請求資料的時候,能夠成功請求,可是在返回的時候報了如下錯誤 經過一番研究後,發現在前端其實就可以處理跨域的問題。步驟如下 在vue專案下的config資料夾下的 index.js 檔案中設定 var ur...