2016-03-02 49 views
2

我有三個Web應用程序的微服務和一個網關,包括用戶界面。所以,我想要做的是改變應用程序的每個微服務都有自己的用戶界面,網關應該使服務器端包括。使用im Thymeleaf的模板引擎,並執行包括像這樣:自己的用戶界面與春天和Thymleaf的微服務

<div th:replace="http://localhost:8080/#/organizations"></div>

我的問題是,CSS和JS文件不會從原來的本地主機包括:從服務器8080服務器,而與包括內容本地主機:9090。

這是我的JS和CSS文件以*:8080:

<script th:src="@{webjars/jquery/$jquery.version$/jquery.min.js}"</script>

希望你能理解我的問題,有人可以幫助...

+0

你能發佈更多的代碼嗎?發佈「組織」面板代碼。我覺得麻煩的發生是因爲「組織」面板之外的腳本定義。嘗試將其嚴格包含在此面板中。 ...或者您無法訪問微服務源代碼? – sanluck

+0

組織來源僅僅是一個普通的HTML makup像 ''

This is a test
並有來自CSS中包括和JavaScript文件就像我的問題 –

+0

我的意思是他們沒有納入要求'HTTP服務器答案://本地主機:8080 /#/ organizations'。或者他們是? – sanluck

回答

2

$ {#httpServletRequest.requestURL}的伎倆......

<link th:href="@{__${#httpServletRequest.requestURL}__webjars/bootstrap/?{bootstrap.version}/css/bootstrap.min.css}" rel="stylesheet" />

現在一切工作正常。

0

我認爲你不能如果您將使用本地主機中的資源,則可以實現您期望的行爲。您的測試頁可以訪問上下文9090的本地資源,例如當它試圖請求例如 <script th:src="@{webjars/angularjs/$angularjs.version$/angular.min.js}"></script>從9090請求去9090但資源8080. 它會工作,如果你會使用CDN(從互聯網)的靜態資源。可能this article會對你有所幫助。