2017-10-13 78 views
-2

我是前端編碼的新手,任何指針都會有所幫助。 我需要我的REST API暴露給應用程序和基於請求我的REST API將返回。 如果響應是真的 - 我需要加載一個HTML頁面,如果響應是錯誤的,我需要加載另一個HTML頁面。基於來自rest api的響應重定向到html頁面

我可以配置這servlet.xml文件或web.xml中?

我使用的彈簧4和Maven的REST API和HTML,CSS和Angularjs的UI。我已經將html,css和js頁面添加到我的項目的src/main/webapp中。 我的web.xml和-servlet.xml位於src/main/webapp/WEB-INF下。

編輯: 不重複的,因爲我不是想實現從JavaScript重定向。 提供的SO鏈接(Redirect from an HTML page)不符合我的要求,因爲我的REST Api和HTML位於同一服務器上,部署在同一臺服務器上供外部應用程序使用。當我的rest api被調用時,根據請求,api將返回true或false並顯示page1或page2。

編輯: 更多的澄清,我不是在尋找重定向代碼。我的問題是如何將API的響應連接到我的js。數據
流量:
在點擊通過外部網站 - REST API調用 - 現在基於響應返回true或false

,要顯示第1頁或第2頁的需求。我如何獲得API對js的響應。

+0

的[從HTML頁面重定向(https://stackoverflow.com/questions/5411538/redirect-from-an-html-page) –

+0

@DerekBrown可能的複製 - 您提供的SO鏈接不符合我的要求,因爲我的REST Api和HTML位於同一個服務器上,部署在同一臺服務器上供外部應用程序使用。當我的rest api被調用時,根據請求,api將返回true或false並顯示page1或page2。 – sva

+0

我能夠通過將我的REST API設置爲Accept =「text/html」並基於響應返回頁面1或頁面2的路徑來實現此目的。感謝您的幫助 – sva

回答

0

如果返回的是真的,你可以只設置window.location = 'http://google.com',否則設置在別的地方!

+0

我打包的HTML頁面與其餘api在同一場戰爭中。這在這種情況下會起作用嗎?我不試圖訪問外部網頁。 – sva

+0

你可以將它設置爲'/ posts/hello',它會留在你的域名+/posts/hello –

+0

謝謝。 但我仍然無法弄清楚我將如何獲得我的js文件的API響應? – sva

1

只要做到:

if(response == true){ 
window.location = 'http://SITEONE.com'; 
} 
else{ 
window.location = 'http://SITETWO.com'; 
} 
+0

我打包的HTML頁面與其餘api在同一場戰爭中。這在這種情況下會起作用嗎?我不試圖訪問外部網頁。 – sva

+0

我能夠通過將我的REST API設置爲Accept =「text/html」並基於響應返回頁面1或頁面2的路徑來實現此目的。謝謝你的幫助! – sva