2015-11-08 25 views
1

我試圖將sails.js作爲路徑控制器和api管理,使用angular.js作爲前端,但是當使用角度修改URL時發現問題sails無法讀取角度標籤後的請求中的GET參數

對於示例/

原始地址:http://localhost

由$ location.search({ '郎':destLanguage})修改後;

修改URL:http://localhost#?lang=fr

然後我使用$ window.location.reload();重新加載頁面以將GET參數發送到sail控制器,但是當我在頁面控制器上進行調試時,發現sails無法從請求中讀取參數。

req.param( '郎')==未定義

我不知道如何解決這個問題。我試圖解決這些問題整整幾天。

謝謝,

+0

如果你使用的是Angular,那麼用JS發送一個http請求到服務器不是更好嗎,而不是強行重載瀏覽器? –

回答

2

散列不是查詢參數後的服務器。它需要在散列之前,或一起去除散列。

http://localhost?lang=fr

,而不是僅僅創造功能合併到您的應用程序

var updateLang = function(lang){ 
window.location = 'http://localhost?lang=' + lang 
} 

答案的其餘部分取決於如果你的角度是設置爲使用html5Mode =真。如果是這樣,那麼你可以使用angular的$ location.search()來檢索你的值。如果不是,那麼您需要找到一個普通的javascript來獲取該值,無論是在頁面加載時還是在您需要它的時間/地點。