iframe快速解決頁面“復(fù)用”

1. 背景

App1有一個(gè)很常用的功能,該功能被其它項(xiàng)目組B看中,App2想以最小的代價(jià)最快上線,就是那種頁面功能直接復(fù)用,避免開發(fā)。

2. 方案

以iframe將App1中的功能頁面嵌入到App2中,雖然說這種方案不通用,但是確實(shí)也是改動(dòng)最小了。

比如已有的項(xiàng)目設(shè)計(jì)方案如下,APP1和App2均是前后端分離的設(shè)計(jì)方案,如下圖所示:

1614942601080.png

方案一:

用戶請求進(jìn)來后,先通過App2的前端發(fā)送請求給App2獲取權(quán)限數(shù)據(jù),比如userid,然后根據(jù)userid拼接新的url發(fā)送給App1從而獲取數(shù)據(jù),結(jié)合靜態(tài)的頁面即可。

1614943242326.png

此方案的優(yōu)點(diǎn)是,比較簡單App2不需要過多開發(fā),請求均是在App2的前端完成。但缺點(diǎn)是,在前端構(gòu)造的請求也就是過程3容易被篡改。

方案二:

用戶請求進(jìn)到Nginx,Nginx將后臺(tái)請求轉(zhuǎn)到APP,App2根據(jù)需要比如結(jié)合權(quán)限,將請求經(jīng)Nginx發(fā)給App1


1614943675857.png

該方案比方案一稍微麻煩些,需要在webapp端寫入稍微多一點(diǎn)的代碼(主要是構(gòu)造請求并在后臺(tái)將請求發(fā)給App1),但是后臺(tái)構(gòu)造的請求,相對比較安全。

目前方案也是采用的第二種。

后記

當(dāng)然這兩種方案其實(shí)都是應(yīng)急處理,代價(jià)較小,但是不適合陣地戰(zhàn)。最后還是要將其服務(wù)后以及模塊化才是更好的選擇。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容