首頁 >後端開發 >php教程 >前後端分離中碰到跨域問題大家是怎麼解決的?

前後端分離中碰到跨域問題大家是怎麼解決的?

WBOY
WBOY原創
2016-09-23 03:30:081259瀏覽

目前我在我的部落格的時候,考慮到使用前後端分離,將前端和後端邏輯單獨放在兩個版本庫,部署在兩台伺服器上。

我的主網域是: godtail.cn(目前使用ghost,新的部落格正在寫...)

  • 前端網域為: www.godtail.cn | godtail.cn | m.godtail.cn

  • 後端網域為: api.godtail.cn

但是在通訊的時候發現,提示跨域了,好吧,我之前以為在主域名相同情況下不會跨域(同域名不同端口也會跨域)。

目前我所知道的可以解決的方法有兩種:

  1. 使用JSONP,說實在我不是特別喜歡使用JSONP,感覺會導致安全問題,或者效率下降(這兩點僅是我的猜測)。
    猜測的理由:

    • 任何來源都能存取, 會不會存在js注入?

    • 後端和前端需要都JSONP進行處理。 (寫起來不爽,而且是所有請求都要使用JSONP)。

  2. 在後端加入跨域頭

    • 如果前端域名比較多,需要增加很多域名,需要維護。如果別的系統需要請求你的接口,加入進跨域頭?不好處理...

大家有沒有更好一點的解決方法?

================【 9-22 17:25 】======================

補充下,設定跨域頭,可以設定ip,僅供自己內部呼叫還是可以的。如果需要外部呼叫的話,就滿足不了,另外不確定有沒有舊版瀏覽器相容問題。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn